feat: eww configs formatted

This commit is contained in:
hesam-init 2024-06-29 16:16:11 +03:30
parent 9cca7e76c2
commit 59d4681c05
9 changed files with 958 additions and 950 deletions

5
.vscode/settings.json vendored Normal file
View file

@ -0,0 +1,5 @@
{
"files.associations": {
"*.yuck": "commonlisp"
},
}

File diff suppressed because it is too large Load diff

View file

@ -1,159 +1,159 @@
(defwindow dashboard (defwindow dashboard
:geometry (geometry :geometry (geometry
:x 0 :x 0
:y 0 :y 0
:width 800 :width 800
:height 420 :height 420
:anchor "center") :anchor "center")
:stacking "overlay" :stacking "overlay"
:monitor 0 :monitor 0
(structure)) (structure))
(defwidget structure[] (defwidget structure []
(box
:class "popup"
:space-evenly false
:orientation "v"
(duser :name "Failed" :tag "failed.sh" :pfp "./assets/image/roundpfp.png")
(box (box
:class "popup" :space-evenly true
:orientation "h"
:vexpand true
(box
:space-evenly false :space-evenly false
:orientation "v" :orientation "v"
(duser :name "Failed" :tag "failed.sh" :pfp "./assets/image/roundpfp.png") (coolmpd :h 150 :permashow true)
(box (box
:space-evenly true :space-evenly false
:orientation "h" :orientation "h"
:vexpand true (box
(box :width 130
:space-evenly false
:orientation "v"
(coolmpd :h 150 :permashow true)
(box
:space-evenly false
:orientation "h"
(box
:width 130
:space-evenly false
:orientation "v"
(dbutt)
(theme))
(dcal)
))
(box
:orientation "v"
:space-evenly false
(dnotes)
(quote))
)))
(defwidget duser [name tag pfp]
(box
:orientation "h"
:space-evenly false
:halign "start"
:hexpand true
:class "unbarwidget"
:style "background-color: inherit;"
:spacing 15
(image :image-width 50 :image-height 50 :path pfp)
(label :text "|" :style "color: #262626; font-size: 30px;")
(box
:orientation "v"
:space-evenly true
:halign "start"
(label :style "font-weight: bold; font-size: 18px;" :text "Hello, ${name}")
(label :halign "start" :text tag))))
(defwidget dnotes []
(box
:class "notes unbarwidget"
:space-evenly false
:orientation "v"
:vexpand true
(label :class "heading" :text "Agenda")
(box
:vexpand true
:width 350
(scroll
:hscroll true
:vscroll true
(label :style "font-size: 16px;" :text notesc)))))
(defwidget dmpd []
(overlay
(box
:class "mpdcover"
:style "background-image: url('${pcover}')"
:height 150)
(box
:orientation "v"
:space-evenly false :space-evenly false
:spacing 10
:valign "center"
(scroll
:hscroll true
:vscroll false
(label :style "font-size: 18px;" :text psong))
(scroll
:hscroll true
:vscroll false
(label :text partist))
;; (scale
;; :hexpand false
;; :width 60
;; :class "seektime"
;; :value current
;; :orientation "h"
;; :min -5
;; :max 100
;; :onscroll "mpc -q seek +1"
;; :tooltip "${ctime}/${ttime}")
(box
:orientation "h"
:space-evenly false
:spacing 40
:halign "center"
:class "dmpdcontrol"
(button :onclick "./scripts/music_info --prev" (label :text "󰒮"))
(button :onclick "./scripts/music_info --toggle" (label :text { pstatus == "Playing" ? "" : ""}))
(button :onclick "./scripts/music_info --next" (label :text "󰒭"))))))
(defwidget dcal []
(box
:class "unbarwidget mincal"
:height 190
:hexpand true
(calendar
:show-details false
:show-heading true
:show-day-names false
:show-week-numbers false
:day calendar_day
:year calendar_year)))
(defwidget dbutt[]
(box
:space-evenly true
:orientation "h"
:height 130
(box
:space-evenly true
:orientation "v" :orientation "v"
(button :class "dicons unbarwidget" :onclick "notify-send 'shutdown' 'but its impractical'" (label :text "")) (dbutt)
(button :class "dicons unbarwidget" :onclick "notify-send 'restart' 'but its impractical'" (label :text ""))) (theme))
(box (dcal)
:space-evenly true ))
:orientation "v" (box
(button :class "dicons unbarwidget" :onclick "notify-send 'lock' 'but its impractical'" (label :text "")) :orientation "v"
(button :class "dicons unbarwidget" :onclick "notify-send 'log out' 'but its impractical'" (label :text "󰍃"))))) :space-evenly false
(dnotes)
(quote))
)))
(defwidget theme [] (defwidget duser [name tag pfp]
(button (box
:class "unbarwidget" :orientation "h"
:vexpand true :space-evenly false
:onclick "./scripts/toggletheme toggle" :halign "start"
(label :style "font-size: 18px;" :text ""))) :hexpand true
:class "unbarwidget"
:style "background-color: inherit;"
:spacing 15
(image :image-width 50 :image-height 50 :path pfp)
(label :text "|" :style "color: #262626; font-size: 30px;")
(box
:orientation "v"
:space-evenly true
:halign "start"
(label :style "font-weight: bold; font-size: 18px;" :text "Hello, ${name}")
(label :halign "start" :text tag))))
;; (defwidget dquote [] (defwidget dnotes []
;; (box (box
;; :class "unbarwidget" :class "notes unbarwidget"
;; :height "120" :space-evenly false
;; :valign "center" :orientation "v"
;; (literal :vexpand true
;; :content quoteliteral))) (label :class "heading" :text "Agenda")
(box
:vexpand true
:width 350
(scroll
:hscroll true
:vscroll true
(label :style "font-size: 16px;" :text notesc)))))
(defwidget dmpd []
(overlay
(box
:class "mpdcover"
:style "background-image: url('${pcover}')"
:height 150)
(box
:orientation "v"
:space-evenly false
:spacing 10
:valign "center"
(scroll
:hscroll true
:vscroll false
(label :style "font-size: 18px;" :text psong))
(scroll
:hscroll true
:vscroll false
(label :text partist))
;; (scale
;; :hexpand false
;; :width 60
;; :class "seektime"
;; :value current
;; :orientation "h"
;; :min -5
;; :max 100
;; :onscroll "mpc -q seek +1"
;; :tooltip "${ctime}/${ttime}")
(box
:orientation "h"
:space-evenly false
:spacing 40
:halign "center"
:class "dmpdcontrol"
(button :onclick "./scripts/music_info --prev" (label :text "󰒮"))
(button :onclick "./scripts/music_info --toggle" (label :text { pstatus == "Playing" ? "" : ""}))
(button :onclick "./scripts/music_info --next" (label :text "󰒭"))))))
(defwidget dcal []
(box
:class "unbarwidget mincal"
:height 190
:hexpand true
(calendar
:show-details false
:show-heading true
:show-day-names false
:show-week-numbers false
:day calendar_day
:year calendar_year)))
(defwidget dbutt[]
(box
:space-evenly true
:orientation "h"
:height 130
(box
:space-evenly true
:orientation "v"
(button :class "dicons unbarwidget" :onclick "notify-send 'shutdown' 'but its impractical'" (label :text ""))
(button :class "dicons unbarwidget" :onclick "notify-send 'restart' 'but its impractical'" (label :text "")))
(box
:space-evenly true
:orientation "v"
(button :class "dicons unbarwidget" :onclick "notify-send 'lock' 'but its impractical'" (label :text ""))
(button :class "dicons unbarwidget" :onclick "notify-send 'log out' 'but its impractical'" (label :text "󰍃")))))
(defwidget theme []
(button
:class "unbarwidget"
:vexpand true
:onclick "./scripts/toggletheme toggle"
(label :style "font-size: 18px;" :text "")))
;; (defwidget dquote []
;; (box
;; :class "unbarwidget"
;; :height "120"
;; :valign "center"
;; (literal
;; :content quoteliteral)))

View file

@ -1,41 +1,43 @@
(defwindow desktopicons (defwindow desktopicons
:geometry (geometry :geometry (geometry
:x 20 :x 20
:y 20 :y 20
:width 100 :width 100
:height 600 :height 600
:anchor "top right") :anchor "top right")
:stacking "bottom" :stacking "bottom"
:monitor 0 :monitor 0
(box
:orientation "v"
:space-evenly "false"
:spacing 10
(eventbox (box
:dragtype "file" :orientation "v"
:class "desktopbox" :space-evenly "false"
:onclick "thunar ${homedir}/.local/share/Trash/files" :spacing 10
:ondropped "notify-send {}"
(box
:orientation "v"
:space-evenly false
:height 100
:valign "end"
(image :width 100 :height 100 :image-width 80 :image-height 80 :path trashcanPath)
(label :class "desktoptext" :text "Trash")))
(for i in '["amogus"]'
(imagesicon :name i))))
(defwidget imagesicon [name]
(eventbox (eventbox
:onclick "feh ./assets/image/desktop/${name}.png" :dragtype "file"
:class "desktopbox" :class "desktopbox"
(box :onclick "thunar ${homedir}/.local/share/Trash/files"
:orientation "v" :ondropped "notify-send {}"
:space-evenly false
:height 100 (box
:valign "end" :orientation "v"
(image :width 100 :height 100 :image-width 80 :image-height 80 :path "./assets/image/desktop/${name}.png") :space-evenly false
(label :class "desktoptext" :text "${name}.png")))) :height 100
:valign "end"
(image :width 100 :height 100 :image-width 80 :image-height 80 :path trashcanPath)
(label :class "desktoptext" :text "Trash")))
(for i in '["amogus"]'
(imagesicon :name i))))
(defwidget imagesicon [name]
(eventbox
:onclick "feh ./assets/image/desktop/${name}.png"
:class "desktopbox"
(box
:orientation "v"
:space-evenly false
:height 100
:valign "end"
(image :width 100 :height 100 :image-width 80 :image-height 80 :path "./assets/image/desktop/${name}.png")
(label :class "desktoptext" :text "${name}.png"))))

View file

@ -1,63 +1,63 @@
(defwindow dock (defwindow dock
:geometry (geometry :geometry (geometry
:x 0 :x 0
:y 0 :y 0
:width 10 :width 10
:height 54 :height 54
:anchor "bottom center") :anchor "bottom center")
:monitor 0 :monitor 0
(dockstruct)) (dockstruct))
(defwidget dockstruct [] (defwidget dockstruct []
(eventbox (eventbox
:onhover "${EWW_CMD} update revealDock=true" :onhover "${EWW_CMD} update revealDock=true"
:onhoverlost "${EWW_CMD} update revealDock=false" :onhoverlost "${EWW_CMD} update revealDock=false"
(box
:orientation "v"
:space-evenly false
:valign "end"
(box
:height 4)
(revealer
:reveal revealDock
:transition "slideup"
(box
:class "popup"
:height 60
:orientation "h"
:halign "center"
(tasklist :iconsize 50))))))
(defwidget tasklist [iconsize]
(box (box
:orientation "h" :orientation "v"
:space-evenly true :space-evenly false
:spacing 10 :valign "end"
(for task in {tasksjson} (box
(button :height 4)
:tooltip { task.name } (revealer
:onclick { task.pid != 'null' ? 'swaymsg "[pid=${task.pid}] focus"' : '(cd && gtk-launch ${task.app_id}) &'} :reveal revealDock
(box :transition "slideup"
:orientation "v" (box
:space-evenly false :class "popup"
(image :height 60
:image-width iconsize :orientation "h"
:image-height iconsize :halign "center"
:path {task.path}) (tasklist :iconsize 50))))))
(scroll (defwidget tasklist [iconsize]
:hscroll true (box
:vscroll false :orientation "h"
(box :space-evenly true
:orientation "h" :spacing 10
:halign "center" (for task in {tasksjson}
:space-evenly false (button
:spacing 3 :tooltip { task.name }
(for focus in {task.focused} :onclick { task.pid != 'null' ? 'swaymsg "[pid=${task.pid}] focus"' : '(cd && gtk-launch ${task.app_id}) &'}
(box (box
:class "dockindicate" :orientation "v"
:hexpand false :space-evenly false
:width { focus ? 10 : 5 } (image
:height 3)))) :image-width iconsize
))))) :image-height iconsize
:path {task.path})
(scroll
:hscroll true
:vscroll false
(box
:orientation "h"
:halign "center"
:space-evenly false
:spacing 3
(for focus in {task.focused}
(box
:class "dockindicate"
:hexpand false
:width { focus ? 10 : 5 }
:height 3))))
)))))

View file

@ -1,90 +1,90 @@
(defwindow notifypopup (defwindow notifypopup
:geometry (geometry :geometry (geometry
:x 0 :x 0
:y 0 :y 0
:width 480 :width 480
:height 0 :height 0
:anchor "top right") :anchor "top right")
:stacking "overlay" :stacking "overlay"
:monitor 0 :monitor 0
(revealer (revealer
:reveal { arraylength(notifications.popups) > 0 } :reveal { arraylength(notifications.popups) > 0 }
:transition "slidedown" :transition "slidedown"
(box (box
:orientation "v" :orientation "v"
:space-evenly false :space-evenly false
:spacing 5 :spacing 5
(for noti in {notifications.popups} (for noti in {notifications.popups}
(singlenotif :noti noti :initial true))))) (singlenotif :noti noti :initial true)))))
(defwidget singlenotif [noti initial] (defwidget singlenotif [noti initial]
(box (box
:orientation "v" :orientation "v"
:class "${initial ? 'popup' : 'notifbox'}" :class "${initial ? 'popup' : 'notifbox'}"
:space-evenly false :space-evenly false
(centerbox (centerbox
:orientation "h" :orientation "h"
:class "notifbar" :class "notifbar"
(image :halign "start" :image-width 30 :image-height 30 :path {noti.icon != "null" ? noti.icon : "./assets/image/idk.svg"}) (image :halign "start" :image-width 30 :image-height 30 :path {noti.icon != "null" ? noti.icon : "./assets/image/idk.svg"})
(scroll (scroll
:halign "center" :halign "center"
:valign "center" :valign "center"
:hexpand true :hexpand true
:hscroll true :hscroll true
:vscroll false :vscroll false
:width 200 :width 200
(label (label
:class "notiflabel" :class "notiflabel"
:text {noti.app})) :text {noti.app}))
(button (button
:halign "end" :halign "end"
:onclick "./scripts/notifManage --close ${noti.id}" :onclick "./scripts/notifManage --close ${noti.id}"
(label (label
:class "notifclose" :class "notifclose"
:text ""))) :text "")))
(box (box
:orientation "h" :orientation "h"
:halign "fill" :halign "fill"
:height 80 :height 80
:space-evenly false :space-evenly false
:spacing 10 :spacing 10
(image :image-width 80 :image-height 80 :visible {noti.image != "null"} :path {noti.image != "null" ? noti.image : "./assets/image/idk.svg"}) (image :image-width 80 :image-height 80 :visible {noti.image != "null"} :path {noti.image != "null" ? noti.image : "./assets/image/idk.svg"})
(button (button
:onclick "./scripts/notifManage --dismiss ${noti.id}" :onclick "./scripts/notifManage --dismiss ${noti.id}"
:onrightclick "./scripts/notifManage --close ${noti.id}" :onrightclick "./scripts/notifManage --close ${noti.id}"
:tooltip "${noti.time}" :tooltip "${noti.time}"
:hexpand true :hexpand true
:vexpand true :vexpand true
(box (box
:orientation "v" :orientation "v"
:space-evenly false :space-evenly false
:valign "center" :valign "center"
(scroll (scroll
:hscroll true :hscroll true
:vscroll false :vscroll false
:hexpand true :hexpand true
(label (label
:class "notiftitle" :class "notiftitle"
:text {noti.summary})) :text {noti.summary}))
(scroll (scroll
:hscroll true :hscroll true
:vscroll false :vscroll false
:hexpand true :hexpand true
(label (label
:class "notifbody" :class "notifbody"
:visible {noti.body != "null"} :visible {noti.body != "null"}
:text {noti.body}))))) :text {noti.body})))))
(box (box
:orientation "h" :orientation "h"
(for action in {noti.actions} (for action in {noti.actions}
(button (button
:onclick "./scripts/notifManage --action ${noti.id} ${action[0]} && ./scripts/notifManage --close ${noti.id}" :onclick "./scripts/notifManage --action ${noti.id} ${action[0]} && ./scripts/notifManage --close ${noti.id}"
(label (label
:class "notifactions" :class "notifactions"
:text {action[1]})) :text {action[1]}))
)))) ))))

View file

@ -1,47 +1,47 @@
(defwidget hovered-sign [var] (defwidget hovered-sign [var]
(box :space-evenly false (box :space-evenly false
(revealer :reveal {!var} (revealer :reveal {!var}
:duration "100ms" :duration "100ms"
:transition "slideleft" :transition "slideleft"
(children :nth 0)) (children :nth 0))
(revealer :reveal {var} (revealer :reveal {var}
:duration "100ms" :duration "100ms"
:transition "slideleft" :transition "slideleft"
(children :nth 1)))) (children :nth 1))))
(defwidget reveal_on_hover [var varname ?class ?duration ?transition] (defwidget reveal_on_hover [var varname ?class ?duration ?transition]
(box (box
:class "reveal_on_hover ${class}" :class "reveal_on_hover ${class}"
:orientation "v" :orientation "v"
:space-evenly false
:valign "end"
(eventbox
:onhover `${EWW_CMD} update ${varname}=true`
:onhoverlost `${EWW_CMD} update ${varname}=false`
(box
:space-evenly false :space-evenly false
:valign "end" :orientation "v"
(eventbox (children :nth 0)
:onhover `${EWW_CMD} update ${varname}=true` (revealer
:onhoverlost `${EWW_CMD} update ${varname}=false` :reveal var
(box :transition {transition ?:"slidedown"}
:space-evenly false :duration "500ms"
:orientation "v" (children :nth 1))))))
(children :nth 0)
(revealer
:reveal var
:transition {transition ?:"slidedown"}
:duration "500ms"
(children :nth 1))))))
(defwidget clickbox [var varname ?class ?duration ?transition] (defwidget clickbox [var varname ?class ?duration ?transition]
(box :class "${class} clickbox" :orientation "h" :space-evenly false (box :class "${class} clickbox" :orientation "h" :space-evenly false
(button :onclick "eww update ${varname}=${ var ? false : true }" (button :onclick "eww update ${varname}=${ var ? false : true }"
(children :nth 0) (children :nth 0)
)
(revealer :reveal var
:transition {transition ?: "slideleft"}
:duration {duration ?: "500ms"}
(box :class "${class}"
:space-evenly false
(children :nth 1)
(button :onclick "eww update ${varname}=false" :class "close" (label :text "Close"))
)
)
) )
) (revealer :reveal var
:transition {transition ?: "slideleft"}
:duration {duration ?: "500ms"}
(box :class "${class}"
:space-evenly false
(children :nth 1)
(button :onclick "eww update ${varname}=false" :class "close" (label :text "Close"))
)
)
)
)

View file

@ -1,70 +1,70 @@
(defwindow wallpaperselect (defwindow wallpaperselect
:geometry (geometry :geometry (geometry
:x 0 :x 0
:y 0 :y 0
:width 415 :width 415
:height 600 :height 600
:anchor "center") :anchor "center")
:stacking "overlay" :stacking "overlay"
:monitor 0 :monitor 0
(box (box
:class "popup" :class "popup"
(wallpaperselectwidget))) (wallpaperselectwidget)))
(defwidget wallpaperselectwidget [] (defwidget wallpaperselectwidget []
(eventbox (eventbox
;; :onhoverlost "${EWW_CMD} close wallpaperselect" ;; :onhoverlost "${EWW_CMD} close wallpaperselect"
(box
:orientation "v"
:class "unbarwidget"
:space-evenly false
(box
:orientation "h"
:space-evenly false
(input
:hexpand true
:onaccept "./scripts/wallhaven.py search {}"
:timeout "20000ms")
(button
:onclick "${EWW_CMD} update wallpapers=[] && ./scripts/wallhaven.py reset"
;; :style "padding: 0px 8px 0px 3px;"
(label
:class "icon"
:text "")))
(scroll
:hscroll false
:vscroll true
:vexpand true
(box (box
:orientation "v" :orientation "v"
:class "unbarwidget" :space-evenly false
:space-evenly false :valign "start"
(image
:style "margin: 50px 0px 5px 0px;"
:hexpand false
:vexpand false
:path "./assets/image/fieshidle.gif"
:visible {arraylength(wallpapers) == 0})
(label
:visible {arraylength(wallpapers) == 0}
:text "No wallpapers yet")
(for wall in wallpapers
(box (box
:orientation "h" :orientation "v"
:space-evenly false :space-evenly false
(input :class "mainentry"
:hexpand true :spacing 5
:onaccept "./scripts/wallhaven.py search {}" (button
:timeout "20000ms") :onclick "./scripts/wallhaven.py select ${wall.url}"
(button (image :image-height 225 :image-width 400 :path {wall.path}))
:onclick "${EWW_CMD} update wallpapers=[] && ./scripts/wallhaven.py reset" (box
;; :style "padding: 0px 8px 0px 3px;" :orientation "h"
(label :space-evenly true
:class "icon" (label :text "${wall.views} 󰈈")
:text ""))) (label :text "${wall.fav} 󰣐")
))))
(scroll ))))
:hscroll false
:vscroll true
:vexpand true
(box
:orientation "v"
:space-evenly false
:valign "start"
(image
:style "margin: 50px 0px 5px 0px;"
:hexpand false
:vexpand false
:path "./assets/image/fieshidle.gif"
:visible {arraylength(wallpapers) == 0})
(label
:visible {arraylength(wallpapers) == 0}
:text "No wallpapers yet")
(for wall in wallpapers
(box
:orientation "v"
:space-evenly false
:class "mainentry"
:spacing 5
(button
:onclick "./scripts/wallhaven.py select ${wall.url}"
(image :image-height 225 :image-width 400 :path {wall.path}))
(box
:orientation "h"
:space-evenly true
(label :text "${wall.views} 󰈈")
(label :text "${wall.fav} 󰣐")
))))
))))

View file

@ -19,15 +19,16 @@
(bottom) (bottom)
))) )))
(defwidget top [] (box (defwidget top []
:orientation "v" (box
:space-evenly false :orientation "v"
:valign "start" :space-evenly false
:vexpand false :valign "start"
(home) :vexpand false
(workspaces) (home)
(hiddenctl) (workspaces)
)) (hiddenctl)
))
(defwidget middle [] (defwidget middle []
(box (box