1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
|
-- Copyright 2025 David Vazgenovich Shakaryan
local mp_utils = require('mp.utils')
local config = {}
-- font size is in units of osd height, which is scaled to 720
config.font_size = 20
config.scroll_margin = 4
config.click_timeout = 0.5
config.click_dbl_time = 0.3
config.click_max_drift = 2
config.btn_timeout = 1
config.bg_alpha = '44'
config.bg_hover_alpha = '66'
config.colour = {
title = '999999',
option = 'ffffff',
info = '666666',
group = 'ffdd99',
group_empty = '776644',
selected = '00ff00',
selected_empty = '337733',
search_hl = 'ddff00',
search_hl_empty = '778800',
search_path = '666666',
search_path_empty = '444444',
icon_sorted = '4488cc',
icon_playing = '3366ff',
icon_favourite = 'ff00ff',
icon_active = 'ff9900',
icon_missing = 'ff0000',
scrollbar_fg = '666666',
scrollbar_bg = '333333',
scrollbar_fg_hover = '00cc00',
scrollbar_bg_hover = '224422',
status_info = '55bbdd',
status_error = 'ff3333',
menu_btn_fg = '000000',
menu_btn_bg = '00cc00',
bg_hover = '003300',
}
config.icon = {
title = '»',
cursor = '›',
status = '🞸',
playing = '\xe2\x8f\xba',
active = '\xe2\x8f\xba',
favourite = '★',
missing = '!!!MISSING!!!',
sorted = '⇅',
menu_btn = '≡',
}
local script_dir = mp.get_script_directory()
config.tmp_dir = os.getenv('XDG_RUNTIME_DIR') or '/tmp'
config.cache_dir = mp_utils.join_path(script_dir, 'cache')
config.img_dir = mp_utils.join_path(script_dir, 'img')
config.favourites_file = mp_utils.join_path(script_dir, 'favourites.json')
return config
|