feat: mpv, waybar, zathura

This commit is contained in:
Ryan 2024-01-14 17:53:01 +08:00
parent ee4f05860c
commit d9b78e8b0b
6 changed files with 105 additions and 183 deletions

View File

@ -30,7 +30,7 @@ layer = overlay
[colors]
background=282828ff
text=665c54ff
match=bdae93ff
match=928374ff
selection=3c3836ff
selection-text=ebdbb2ff
selection-match=ebdbb2ff

View File

@ -1,87 +0,0 @@
import argparse
import collections
import json
import pathlib
class Profile:
def __init__(self, object, json, groups_key="setting-groups"):
self.json = json
self.groups_key = groups_key
self._settings = []
self._shaders = []
self._collect(object)
def _collect(self, object):
self._settings.extend(object.get("settings", []))
self._shaders.extend(object.get("shaders", []))
for key in object.get(self.groups_key, []):
self._collect(self.json["setting-groups"][key])
parser = argparse.ArgumentParser()
parser.add_argument("--profile", default=None)
parser.add_argument(
"--path", default=f"{pathlib.Path.home()}/.config/mpv/default-shader-pack")
parser.add_argument("--config", default=False, action="store_true")
arguments = parser.parse_args()
arguments.path = str(pathlib.Path(arguments.path))
# with open(pathlib.Path(arguments.path, "pack.json"), "rb") as file:
with open(pathlib.Path(arguments.path, "pack-hq.json"), "rb") as file:
json_ = json.load(file)
if arguments.profile is None:
for profile in json_["profiles"].values():
print(profile["displayname"])
else:
if arguments.config:
prefix = ""
end = None
else:
prefix = "--"
end = " "
default_profile = Profile(
json_, json_, groups_key="default-setting-groups")
(_,) = (
profile
for profile in json_["profiles"].values()
if profile["displayname"] == arguments.profile
)
profile = Profile(_, json_)
for key, value in collections.OrderedDict(
default_profile._settings + profile._settings
).items():
key = key.replace("_", "-")
if value is True:
print(prefix, key, sep="", end=end)
continue
print(prefix, key, "=", value, sep="", end=end)
print(
prefix,
"glsl-shaders=",
":".join(
str(pathlib.Path(arguments.path, "shaders", shader))
for shader in collections.OrderedDict(
(_, None) for _ in default_profile._shaders + profile._shaders
).keys()
),
sep="",
end=end,
)
print()

@ -1 +0,0 @@
Subproject commit ca506a6bf3937881ebd1ab35bfbaf3d9b0221e0d

View File

@ -1,3 +1,3 @@
volume=70
sub-auto=fuzzy
# hwdec=auto-safe
hwdec=auto-safe

View File

@ -21,7 +21,9 @@
"show_special": true,
"on-click": "activate",
"persistent_workspaces": {
"9": ["HDMI-A-1"]
"9": [
"HDMI-A-1"
]
}
},
"sway/window": {
@ -86,10 +88,15 @@
"escape": true
},
"custom/player": {
"format": "󰎈 {}",
"format": "{icon} {}",
"format-icons": {
"Playing": "󰎈 ",
"Paused": "󰏤 "
},
"return-type": "json",
"exec": "playerctl -a metadata --format '{\"text\": \"{{uc(playerName)}}: {{artist}} - {{markup_escape(title)}}\", \"tooltip\": \"{{playerName}} : {{markup_escape(title)}}\", \"class\": \"{{status}}\"}' -F",
"max-length": 35,
"on-click": "playerctl play-pause"
"exec": "playerctl -a metadata --format '{\"text\": \"{{playerName}}: {{artist}} - {{markup_escape(title)}}\", \"tooltip\": \"{{markup_escape(title)}} - {{markup_escape(album)}}\", \"class\": \"{{status}}\", \"alt\": \"{{status}}\" }' -F",
"max-length": 40,
"on-click": "playerctl play-pause",
"on-click-right": "pavucontrol"
}
}

View File

@ -38,3 +38,6 @@ set recolor-lightcolor "#282828" # bg
set recolor-darkcolor "#ebdbb2" # fg
set recolor "true"
# set recolor-keephue true # keep original color
# selection clipboard
set selection-clipboard clipboard