eww: lyrics highlighting & rofi: adjust size

This commit is contained in:
2025-06-28 09:02:57 +02:00
parent aacbf08995
commit a47bf3d9ce
10 changed files with 52 additions and 10 deletions

View File

@@ -45,7 +45,7 @@ qt6ct
waybar
eww
wlogout
fuzzel
rofi(-wayland)
mpv
blueman # bluetooth GUI & applet
pavucontrol

5
code-flags.conf Normal file
View File

@@ -0,0 +1,5 @@
--password-store=gnome-libsecret
--enable-features=UseOzonePlatform
--ozone-platform=wayland
--use-gl=desktop
--enable-wayland-ime

View File

@@ -1,4 +1,4 @@
(defpoll lyriclines :interval "500ms" "~/.local/bin/spotify-lyrics print -l 3 -f \"$HOME/.local/state/eww/lyrics/offset\"")
(defpoll lyriclines :interval "500ms" "~/.local/bin/spotify-lyrics print -l 3 -a 1 -f \"$HOME/.local/state/eww/lyrics/offset\" | Lyrics/scripts/colorize.sh 2")
(deflisten lyricline "~/.local/bin/spotify-lyrics listen -l 1 -f \"$HOME/.local/state/eww/lyrics/offset\"")
(defpoll position :interval "1s" "~/.local/bin/spotify-lyrics position")
(defpoll length :interval "1s" "~/.local/bin/spotify-lyrics length")
@@ -13,7 +13,8 @@
(label :class "lyrics-text"
:vexpand "false" :hexpand "false" :space-evenly "false"
:halign "start"
:text lyriclines
:unindent "false" :truncate "false" :truncate-left "false"
:markup lyriclines
)
)
(box :class "control-box" :vexpand "false" :hexpand "false" :space-evenly "true" :orientation "v"

24
eww/Lyrics/scripts/colorize.sh Executable file
View File

@@ -0,0 +1,24 @@
#!/bin/env bash
HIGHLIGHT_COLOR="#cdd6f4" # text
NORMAL_COLOR="#7f849c" # overlay1
TARGET_LINE=1
[ -n $1 ] && TARGET_LINE="$1"
mapfile -t lines
output=""
for i in "${!lines[@]}"; do
line_num=$((i + 1))
escaped_line=$(echo "${lines[$i]}" | sed 's/&/\&amp;/g; s/</\&lt;/g; s/>/\&gt;/g')
[[ $i -gt 0 ]] && output+=$'\n' # +="\n" is not properly displayed in eww
if [[ $line_num -eq $TARGET_LINE ]]; then
output+="<span color=\"$HIGHLIGHT_COLOR\">$escaped_line</span>"
else
output+="<span color=\"$NORMAL_COLOR\">$escaped_line</span>"
fi
done
echo "$output"

0
eww/Lyrics/scripts/lyric-show.sh Normal file → Executable file
View File

View File

@@ -1,8 +1,18 @@
if type -q fzf
fzf --fish | source
if type -q wl-copy
function fzc
fzf $argv | string collect | wl-copy
end
end
end
if type -q zoxide
zoxide init fish | source
alias cd=z
end
if type -q trash
alias rm="echo \"use 'trash' instead :)\" && sh -c \"exit 42\""
end

View File

@@ -30,7 +30,7 @@ bind = Super, Period, exec, pkill rofi || ~/.scripts/rofi-emoji # Pick emoji >>
bind = Ctrl+Alt, Delete, exec, pkill wlogout || wlogout -p layer-shell # [hidden]
bind = Super+Shift, S, exec, hyprshot -z -m region # Screen snip
bind = Super+Ctrl+Shift, S, exec, hyprshot -z -m window # Screen snip (window)
bind = , Print, exec, hyprshot -z -m output -s -m eDP-2 # Screen snip (whole screen)
bind = , Print, exec, hyprshot -z -m output -m eDP-2 # Screen snip (whole screen)
# Color picker
bind = Super+Shift, C, exec, hyprpicker -a # Pick color (Hex) >> clipboard
# Fullscreen screenshot
@@ -101,6 +101,8 @@ bind = Super, mouse:276, togglefloating # [hidden]
bind = Super+Alt, F, fullscreenstate, 0 3 # Toggle fake fullscreen
bind = Super, F, fullscreen, 0
bind = Super, D, fullscreen, 1
bind = Super, J, togglesplit
bind = Super, P, pseudo
#!
##! Workspace navigation

View File

@@ -1,6 +1,6 @@
/*****----- ALL -----*****/
* {
font: "Maple Mono Normal NF CN Semibold 12";
font: "Maple Mono Normal NF CN Semibold 10";
base: #1e1e2e;
mantle: #181825;
text: #cdd6f4;
@@ -41,7 +41,7 @@ window {
location: center;
anchor: center;
fullscreen: false;
width: 720px;
width: 600px;
x-offset: 0px;
y-offset: 0px;
@@ -70,7 +70,7 @@ mainbox {
inputbar {
enabled: true;
spacing: 0px;
padding: 100px 40px;
padding: 75px 30px;
border-radius: 14px 14px 0 0;
background-color: transparent;
background-image: url("~/.config/backgrounds/nao-stars-crop-adjust-flop.jpg", width);

View File

@@ -5,12 +5,12 @@ configuration {
}
window {
width: 500px;
width: 450px;
children: [ "inputbar", "message", "listview" ];
}
inputbar {
padding: 80px 40px;
padding: 60px 30px;
}
listview {