;; ┌────────────────────────────────────────────────────────────┐
;; │░█▀█░█▀█░█░░░█░█░█▀▄░█▀█░█▀▄░░░░░░░░░█▀▀░█▀█░█▀█░█▀▀░▀█▀░█▀▀│
;; │░█▀▀░█░█░█░░░░█░░█▀▄░█▀█░█▀▄░░░░▀░░░░█░░░█░█░█░█░█▀▀░░█░░█░█│
;; │░▀░░░▀▀▀░▀▀▀░░▀░░▀▀░░▀░▀░▀░▀░░░░▀░░░░▀▀▀░▀▀▀░▀░▀░▀░░░▀▀▀░▀▀▀│
;; │░Created░By░Aditya░Shakya░@adi1090x░░░░░░░░░░░░░░░░░░░░░░░░░│
;; └────────────────────────────────────────────────────────────┘

;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_

;; Global WM Settings

[global/wm]
; Adjust the _NET_WM_STRUT_PARTIAL top value
; Used for top aligned bars
margin-bottom = 0

; Adjust the _NET_WM_STRUT_PARTIAL bottom value
; Used for bottom aligned bars
margin-top = 0

;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_

;; File Inclusion
; include an external file, like module file, etc.

include-file = ~/.config/polybar/shared/modules.ini
include-file = ~/.config/polybar/shared/bars.ini




;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_

;; Bar Settings

[bar/main]
; Use either of the following command to list available outputs:
; If unspecified, the application will pick the first one it finds.
; $ polybar -m | cut -d ':' -f 1
; $ xrandr -q | grep " connected" | cut -d ' ' -f1
monitor = ${env:MONITOR:}

; Use the specified monitor as a fallback if the main one is not found.
monitor-fallback =

; Require the monitor to be in connected state
; XRandR sometimes reports my monitor as being disconnected (when in use)
monitor-strict = false

; Tell the Window Manager not to configure the window.
; Use this to detach the bar if your WM is locking its size/position.
override-redirect = false

; Put the bar at the bottom of the screen
bottom = false

; Prefer fixed center position for the `modules-center` block
; When false, the center position will be based on the size of the other blocks.
fixed-center = true

; Dimension defined as pixel value (e.g. 35) or percentage (e.g. 50%),
; the percentage can optionally be extended with a pixel offset like so:
; 50%:-10, this will result in a width or height of 50% minus 10 pixels
width = 100%
height = 22

; Offset defined as pixel value (e.g. 35) or percentage (e.g. 50%)
; the percentage can optionally be extended with a pixel offset like so:
; 50%:-10, this will result in an offset in the x or y direction
; of 50% minus 10 pixels
offset-x = 0
offset-y = 0

; Background ARGB color (e.g. #f00, #ff992a, #ddff1023)
background = ${color.bg}

; Foreground ARGB color (e.g. #f00, #ff992a, #ddff1023)
foreground = ${color.fg}

; Background gradient (vertical steps)
;   background-[0-9]+ = #aarrggbb
;;background-0 =

; Value used for drawing rounded corners
; Note: This shouldn't be used together with border-size because the border
; doesn't get rounded
; Individual top/bottom values can be defined using:
;   radius-{top,bottom}
radius-top = 0.0
radius-bottom = 0.0

; Under-/overline pixel size and argb color
; Individual values can be defined using:
;   {overline,underline}-size
;   {overline,underline}-color
;;overline-size = 0
;;overline-color = ${color.ac}

; Values applied to all borders
; Individual side values can be defined using:
;   border-{left,top,right,bottom}-size
;   border-{left,top,right,bottom}-color
; The top and bottom borders are added to the bar height, so the effective
; window height is:
;   height + border-top-size + border-bottom-size
; Meanwhile the effective window width is defined entirely by the width key and
; the border is placed withing this area. So you effectively only have the
; following horizontal space on the bar:
;   width - border-right-size - border-left-size
;;border-size = 2
;;border-color = ${color.ac}

; Number of spaces to add at the beginning/end of the bar
; Individual side values can be defined using:
;   padding-{left,right}
padding = 0

; Number of spaces to add before/after each module
; Individual side values can be defined using:
;   module-margin-{left,right}
module-margin-left = 0
module-margin-right = 1

;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_

; Fonts are defined using <font-name>;<vertical-offset>
; Font names are specified using a fontconfig pattern.
;   font-0 = NotoSans-Regular:size=8;2
;   font-1 = MaterialIcons:size=10
;   font-2 = Termsynu:size=8;-1
;   font-3 = FontAwesome:size=10
; See the Fonts wiki page for more details

; Main font (clock, workspace num, volume bars)
; also affects separator spacing (blanks get larger)
; font-0 = "Noto Sans:size=9;4"
; font-0 = "Iosevka Nerd Font:size=10;4"
font-0 = "MesloLGS NF:size=9;3"
; font-0 = "Hack Nerd Font:size=9;3"
; font-0 = "JetBrains Mono Font:size=9;3"

; Right icons (switch theme, wifi, battery)
font-1 = "icomoon\\-feather:size=9;4"
; font-1 = "MesloLGS NF:size=9;3"

; Left icons like menu, terminal, firefox, folder, settings... (12)
; font-2 = "Iosevka Nerd Font:size=14;3"
font-2 = "MesloLGS NF:size=12;3"
; font-2 = "Hack Nerd Font:size=14;3"
; font-2 = "JetBrains Mono Font:size=14;3"
; font-2 = "NotoSansMono Nerd Font:size=12;3"

; ?? (8)
; some things use font 4 like /batter module, label-discharging-font = 4 (starts on 1)
; font-3 = "Noto Sans:size=8;4"
font-3 = "MesloLGS NF:size=8;3"
; font-3 = "Hack Nerd Font:size=8;3"
; font-3 = "JetBrains Mono Nerd Font:size=8;3"

; Even smaller for larger glips
; Used for batter charging animation glyph
; use x-font = 5
font-4 = "MesloLGS NF:size=7;2"

;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_

; Modules are added to one of the available blocks
;   modules-left = cpu ram
;   modules-center = xwindow xbacklight
;   modules-right = ipc clock

; modules-left = menu sep2 term web files settings
; modules-center =
; modules-right = style sep alsa battery network date sep sysmenu

modules-left = menu settings htop taskmanager bashtop files web web2 term editor notepad calc spotify
; modules-center = memory cpu
; alsa volume brightness title colorpicker
modules-right = i3 workspaces cpu memory volume_bar network battery date style powermenu

;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_

; The separator will be inserted between the output of each module
separator =

; Opacity value between 0.0 and 1.0 used on fade in/out
dim-value = 1.0

; Value to be used to set the WM_NAME atom
; If the value is empty or undefined, the atom value
; will be created from the following template: polybar-[BAR]_[MONITOR]
; NOTE: The placeholders are not available for custom values
wm-name =

; Locale used to localize various module data (e.g. date)
; Expects a valid libc locale, for example: sv_SE.UTF-8
locale =

; Position of the system tray window
; If empty or undefined, tray support will be disabled
; NOTE: A center aligned tray will cover center aligned modules
;
; Available positions:
;   left
;   center
;   right
;   none
tray-position = none

; If true, the bar will not shift its
; contents when the tray changes
tray-detached = false

; Tray icon max size
tray-maxsize = 16

; Background color for the tray container
; ARGB color (e.g. #f00, #ff992a, #ddff1023)
; By default the tray container will use the bar
; background color.
tray-background = ${color.background}

; Tray offset defined as pixel value (e.g. 35) or percentage (e.g. 50%)
tray-offset-x = 0
tray-offset-y = 0

; Pad the sides of each tray icon
tray-padding = 0

; Scale factor for tray clients
tray-scale = 1.0

; Restack the bar window and put it above the
; selected window manager's root
;
; Fixes the issue where the bar is being drawn
; on top of fullscreen window's
;
; Currently supported WM's:
;   bspwm
;   i3 (requires: `override-redirect = true`)
;;wm-restack =

; Set a DPI values used when rendering text
; This only affects scalable fonts
; dpi =

; Enable support for inter-process messaging
; See the Messaging wiki page for more details.
enable-ipc = true

; Fallback click handlers that will be called if
; there's no matching module handler found.
click-left =
click-middle =
click-right =
scroll-up =
scroll-down =
double-click-left =
double-click-middle =
double-click-right =

; Requires polybar to be built with xcursor support (xcb-util-cursor)
; Possible values are:
; - default   : The default pointer as before, can also be an empty string (default)
; - pointer   : Typically in the form of a hand
; - ns-resize : Up and down arrows, can be used to indicate scrolling
cursor-click =
cursor-scroll =

;; WM Workspace Specific

; bspwm
;;scroll-up = bspwm-desknext
;;scroll-down = bspwm-deskprev
;;scroll-up = bspc desktop -f prev.local
;;scroll-down = bspc desktop -f next.local

;i3
;;scroll-up = i3wm-wsnext
;;scroll-down = i3wm-wsprev
;;scroll-up = i3-msg workspace next_on_output
;;scroll-down = i3-msg workspace prev_on_output




;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_

;; Application Settings

[settings]
; The throttle settings lets the eventloop swallow up til X events
; if they happen within Y millisecond after first event was received.
; This is done to prevent flood of update event.
;
; For example if 5 modules emit an update event at the same time, we really
; just care about the last one. But if we wait too long for events to swallow
; the bar would appear sluggish so we continue if timeout
; expires or limit is reached.
throttle-output = 5
throttle-output-for = 10

; Time in milliseconds that the input handler will wait between processing events
;throttle-input-for = 30

; Reload upon receiving XCB_RANDR_SCREEN_CHANGE_NOTIFY events
screenchange-reload = false

; Compositing operators
; @see: https://www.cairographics.org/manual/cairo-cairo-t.html#cairo-operator-t
compositing-background = source
compositing-foreground = over
compositing-overline = over
compositing-underline = over
compositing-border = over

; Define fallback values used by all module formats
;format-foreground =
;format-background =
;format-underline =
;format-overline =
;format-spacing =
;format-padding =
;format-margin =
;format-offset =

; Enables pseudo-transparency for the bar
; If set to true the bar can be transparent without a compositor.
pseudo-transparency = false




;; ┌────────────────────────────────────────────────────────────┐
;; │░█▀█░█▀█░█░░░█░█░█▀▄░█▀█░█▀▄░░░░░░░░░█▀▀░█▀█░█░░░█▀█░█▀▄░█▀▀│
;; │░█▀▀░█░█░█░░░░█░░█▀▄░█▀█░█▀▄░░░░▀░░░░█░░░█░█░█░░░█░█░█▀▄░▀▀█│
;; │░▀░░░▀▀▀░▀▀▀░░▀░░▀▀░░▀░▀░▀░▀░░░░▀░░░░▀▀▀░▀▀▀░▀▀▀░▀▀▀░▀░▀░▀▀▀│
;; │░Created░By░Aditya░Shakya░@adi1090x░░░░░░░░░░░░░░░░░░░░░░░░░│
;; └────────────────────────────────────────────────────────────┘

[color]

;; Active Colors
bg = #232832
bg-alt = #1C2028
fg = #EAEAEA
fg-alt = #9C9C9C

trans = #00000000
white = #FFFFFF
black = #000000

;; Material Colors

red = #e53935
pink = #d81b60
purple = #8e24aa
deep-purple = #5e35b1
indigo = #3949ab
blue = #1e88e5
light-blue = #039be5
cyan = #00acc1
teal = #00897b
green = #43a047
light-green = #7cb342
lime = #c0ca33
yellow = #fdd835
amber = #ffb300
orange = #fb8c00
deep-orange = #f4511e
brown = #6d4c41
grey = #757575
blue-gray = #546e7a





;; ┌────────────────────────────────────────────────────────────────┐
;; │░█▀█░█▀█░█░░░█░█░█▀▄░█▀█░█▀▄░░░░░░░░░█▄█░█▀█░█▀▄░█░█░█░░░█▀▀░█▀▀│
;; │░█▀▀░█░█░█░░░░█░░█▀▄░█▀█░█▀▄░░░░▀░░░░█░█░█░█░█░█░█░█░█░░░█▀▀░▀▀█│
;; │░▀░░░▀▀▀░▀▀▀░░▀░░▀▀░░▀░▀░▀░▀░░░░▀░░░░▀░▀░▀▀▀░▀▀░░▀▀▀░▀▀▀░▀▀▀░▀▀▀│
;; │░Created░By░Aditya░Shakya░@adi1090x░░░░░░░░░░░░░░░░░░░░░░░░░░░░░│
;; └────────────────────────────────────────────────────────────────┘

[module/menu]
type = custom/text
#content = 
content = "%{T3}%{T-}"
content-background = ${color.light-blue}
content-foreground = ${color.fg}
content-padding = 2
click-left = ~/.config/polybar/qpanels/scripts/launcher.sh --budgie
click-right = ~/.config/polybar/qpanels/scripts/launcher.sh --budgie

;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_

[module/powermenu]
type = custom/text
content = 襤
#content-background = ${color.bg-alt}
content-foreground = ${color.fg}
content-padding = 2
click-left = ~/.config/polybar/qpanels/scripts/powermenu.sh --budgie
click-right = ~/.config/polybar/qpanels/scripts/powermenu.sh --budgie

;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_

[module/style]
type = custom/text
#content = " פֿ"
content ="  頋" 
#content-background = ${color.bg-alt}
content-foreground = ${color.fg}
content-padding = 0
click-left = ~/.config/polybar/qpanels/scripts/style-switch.sh --budgie
click-right = ~/.config/polybar/qpanels/scripts/style-switch.sh --budgie

;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
















; [module/alsa]
; type = internal/alsa

; ; You can find the different card numbers in `/proc/asound/cards`
; ;;master-soundcard = default
; ;;speaker-soundcard = default
; ;;headphone-soundcard = default

; ; Default: Master
; ;;master-mixer = Master

; ; Optionally define speaker and headphone mixers
; ; Default: none
; ;;speaker-mixer = Speaker
; ; Default: none
; ;;headphone-mixer = Headphone

; ; Default: 5
; ;;interval = 5

; ; Available tags:
; ;   <label-volume> (default)
; ;   <ramp-volume>
; ;   <bar-volume>
; format-volume = <ramp-volume>
; format-volume-background = ${color.bg-alt}
; format-volume-padding = 2

; ; Available tags:
; ;   <label-muted> (default)
; ;   <ramp-volume>
; ;   <bar-volume>
; format-muted = <label-muted>
; format-muted-background = ${color.bg-alt}
; format-muted-padding = 2

; ; Available tokens:
; ;   %percentage% (default)
; label-volume = %percentage%%

; ; Available tokens:
; ;   %percentage% (default
; label-muted = ﱝ
; label-muted-foreground = ${color.fg-alt}

; ramp-volume-0 = 
; ramp-volume-1 = 
; ramp-volume-2 = 
; ramp-volume-3 = 

; ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_

; [module/battery]
; type = internal/battery

; full-at = 99

; ; $ ls -1 /sys/class/power_supply/
; battery = BAT1
; adapter = ACAD

; poll-interval = 2
; time-format = %H:%M

; ; Available tags:
; ;   <label-charging> (default)
; ;   <bar-capacity>
; ;   <ramp-capacity>
; ;   <animation-charging>
; format-charging = <animation-charging>
; format-charging-background = ${color.bg-alt}
; format-charging-padding = 2

; ; Available tags:
; ;   <label-discharging> (default)
; ;   <bar-capacity>
; ;   <ramp-capacity>
; ;   <animation-discharging>
; format-discharging = <ramp-capacity>
; format-discharging-background = ${color.bg-alt}
; format-discharging-padding = 2

; ; Available tags:
; ;   <label-full> (default)
; ;   <bar-capacity>
; ;   <ramp-capacity>
; format-full = <label-full>
; format-full-background = ${color.bg-alt}
; format-full-padding = 2

; ; Available tokens:
; ;   %percentage% (default)
; ;   %time%
; ;   %consumption% (shows current charge rate in watts)
; label-charging = %percentage%%

; ; Available tokens:
; ;   %percentage% (default)
; ;   %time%
; ;   %consumption% (shows current discharge rate in watts)
; label-discharging = %percentage%%

; ; Available tokens:
; ;   %percentage% (default)
; ;label-full = Fully Charged
; label-full = 
; label-full-foreground = ${color.green}

; ramp-capacity-0 = 
; ramp-capacity-1 = 
; ramp-capacity-2 = 
; ramp-capacity-3 = 
; ramp-capacity-4 = 
; ramp-capacity-5 = 
; ramp-capacity-6 = 
; ramp-capacity-7 = 
; ramp-capacity-8 = 
; ramp-capacity-9 = 

; animation-charging-0 = 
; animation-charging-1 = 
; animation-charging-2 = 
; animation-charging-3 = 
; animation-charging-4 = 
; animation-charging-5 = 
; animation-charging-6 = 

; ; Framerate in milliseconds
; animation-charging-framerate = 750

; ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_

; [module/date]
; type = internal/date

; interval = 1.0

; time = %I:%M %p
; ;;time-alt = %B %d, %Y

; format = <label>
; format-background = ${color.bg-alt}
; format-padding = 2

; label = %time%

; ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_

; [module/network]
; type = internal/network

; interface = wlan0
; interval = 1.0

; ;ping-interval = 3
; ;;udspeed-minwidth = 5
; accumulate-stats = true
; unknown-as-up = true

; ; Available tags:
; ;   <label-connected> (default)
; ;   <ramp-signal>
; format-connected = <label-connected>
; format-connected-background = ${color.bg-alt}
; format-connected-padding = 2

; ; Available tags:
; ;   <label-disconnected> (default)
; format-disconnected = <label-disconnected>
; format-disconnected-background = ${color.bg-alt}
; format-disconnected-padding = 2

; ; Available tags:
; ;   <label-connected> (default)
; ;   <label-packetloss>
; ;   <animation-packetloss>
; ;;format-packetloss = <animation-packetloss> <label-connected>

; ; Available tokens:
; ;   %ifname%    [wireless+wired]
; ;   %local_ip%  [wireless+wired]
; ;   %local_ip6% [wireless+wired]
; ;   %essid%     [wireless]
; ;   %signal%    [wireless]
; ;   %upspeed%   [wireless+wired]
; ;   %downspeed% [wireless+wired]
; ;   %linkspeed% [wired]
; ; Default: %ifname% %local_ip%
; ;label-connected = 說
; label-connected = "%{A1:networkmanager_dmenu &:}說%{A}"

; ; Available tokens:
; ;   %ifname%    [wireless+wired]
; ; Default: (none)
; ;label-disconnected = ﲁ
; label-disconnected = "%{A1:networkmanager_dmenu &:}ﲁ%{A}"
; label-disconnected-foreground = ${color.fg-alt}

; ; Available tokens:
; ;   %ifname%    [wireless+wired]
; ;   %local_ip%  [wireless+wired]
; ;   %local_ip6% [wireless+wired]
; ;   %essid%     [wireless]
; ;   %signal%    [wireless]
; ;   %upspeed%   [wireless+wired]
; ;   %downspeed% [wireless+wired]
; ;   %linkspeed% [wired]
; ; Default: (none)
; ;label-packetloss = %essid%
; ;label-packetloss-foreground = #eefafafa

; ramp-signal-0 = 說
; ramp-signal-1 = 說
; ramp-signal-2 = 說
; ramp-signal-3 = 說
; ramp-signal-4 = 說

; ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_

; [module/menu]
; type = custom/text

; content = 
; content-background = ${color.light-blue}
; content-foreground = ${color.fg}
; content-padding = 3

; click-left = ~/.config/polybar/panels/scripts/launcher.sh --budgie
; click-right = ~/.config/polybar/panels/scripts/launcher.sh --budgie

; ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_

; [module/sysmenu]
; type = custom/text

; content = 襤
; content-background = ${color.bg-alt}
; content-foreground = ${color.fg}
; content-padding = 3

; click-left = ~/.config/polybar/panels/scripts/powermenu.sh --budgie
; click-right = ~/.config/polybar/panels/scripts/powermenu.sh --budgie

; ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_

; [module/style]
; type = custom/text
; content = פֿ
; content-background = ${color.bg-alt}
; content-foreground = ${color.fg}
; content-padding = 2

; click-left = ~/.config/polybar/panels/scripts/style-switch.sh --budgie
; click-right = ~/.config/polybar/panels/scripts/style-switch.sh --budgie

; ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_

; [module/sep]
; type = custom/text

; content = |
; content-foreground = ${color.grey}
; content-background = ${color.bg-alt}
; content-padding = 1

; [module/sep2]
; type = custom/text

; content = |
; content-foreground = ${color.bg}
; content-background = ${color.bg}
; content-padding = 1

; ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
; ;; Apps

; [module/term]
; type = custom/text

; content = "%{T3}%{T-}"
; content-foreground = ${color.green}
; content-background = ${color.bg}
; content-padding = 3

; click-left  = termite &

; [module/web]
; type = custom/text

; content = "%{T3}%{T-}"
; content-foreground = ${color.orange}
; content-background = ${color.bg}
; content-padding = 3

; click-left  = firefox &

; [module/files]
; type = custom/text

; content = "%{T3}%{T-}"
; content-foreground = ${color.blue}
; content-background = ${color.bg}
; content-padding = 3

; click-left  = thunar &

; [module/settings]
; type = custom/text

; content = "%{T3}煉%{T-}"
; content-foreground = ${color.red}
; content-background = ${color.bg}
; content-padding = 3

; click-left  = xfce4-settings &

; ;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
