-
-
Notifications
You must be signed in to change notification settings - Fork 7
/
_TIPS and INSTALLATION.txt
219 lines (196 loc) · 12.3 KB
/
_TIPS and INSTALLATION.txt
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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
REQUISITES:
-----------
Spider Monkey Panel 1.6.1 or greater (only stable releases supported):
https://theqwertiest.github.io/foo_spider_monkey_panel/
WINE USERS:
-----------
All scripts try to use wine-friendly methods, focusing on config settings that can be changed via
menus or the UI panel, instead of using HTML (which only works on Windows), known working fonts, etc.
Please read this page and feel free to report (me) any problems with these scripts:
https://theqwertiest.github.io/foo_spider_monkey_panel/docs/wine/
INSTALLATION:
-------------
If the script is provided as package file, use the SMP package manager to install it. Look
at the wiki for a guide. Otherwise, to install as file follow these steps:
Copy all files from the zip into YOUR_FOOBAR_PROFILE_PATH\scripts\SMP\xxx-scripts
If there is no such path, create all the required folders and subfolders on it.
Any other path WILL NOT work without editing the scripts. (see images\_Installation_*jpg) (*)
For ex: mine is c:\Users\xxx\AppData\Roaming\foobar2000\scripts\SMP\xxx-scripts\...
For portable installations >= 1.6: .\foobar2000\profile\scripts\SMP\xxx-scripts\... (**)
For portable installations <= 1.5: .\foobar2000\scripts\SMP\xxx-scripts\...
Multiple scripts may share some files (specially helpers) so overwrite if asked to do so.
Then load any script found on the root folder into a SMP panel within foobar ('File' as
script source). Check 'INFO' section (at bottom) for usage.
Some scripts may require additional files or dependencies (like fonts). Check the 'INFO' section
for more details, the github page or the related pdf documentation at 'readmes' folder (if available).
(*) To change the hardcoded installation part of the path, go to .\helpers\helpers_xxx.js
and change the variable named 'folders.xxxName'. This is a workaround for some SMP limitations
when working with relative paths. Its use is at your own responsibility but feel free to report
any problem with it.
(**) If you upgraded to >1.6 from an older portable version then it may be possible that the 'profile'
folder does not exist. In such case you have to create it and move all the config folders/files to it,
where they should reside (instead of the root of the foobar2000 installation path). Some native folders
and files which must be moved include:
index-data, js_data, component-updates, configuration, crash reports, user-components,
foo_spider_monkey_panel, library, playlists, theme.fth, LargeFieldsConfig.txt, version.txt
Some extra folders from other components which must be moved include (non extensive list):
autobackup, dvda_metabase, foo_httpcontrol_data, foo_youtube, images, lastfm, python, sacd_metabase,
vst-presets, yttm,minibar.db, playlist-tree-0.pts, playlist-tree-1.pts,
If you don't move all the config folders/files then on startup default values will be used for things
not found, probably "losing" the theme or other config. You may "fix" it later moving the missing files
which still reside in the root. May take some tries to do them all.
SMP 1.5.2+ WINE BUG (crash when installing scripts):
----------------------------------------------------
After loading a script into a panel, Foobar2000 may crash (not only the panel). See below.
SMP 1.5.2+ BUG (crash when installing scripts):
-----------------------------------------------
After properly installing the files, if Foobar2000 SMP panels keep crashing due to 'missing files',
check '_switchPaths.zip'. Follow its instructions to fix it. Then report it at
https://hydrogenaud.io/index.php?topic=116669.0
PORTABLE TIP:
-------------
Some scripts have configurable paths to save json data, track playlists, etc. Those can be found on
the properties panel. Instead of using the menus and adding an absolute path, it would be advisable
to edit them manually to ensure they are relative too:
For ex. for the playlist manager, the tracked folder:
H:\MySoftware\foobar2000\profile\playlist_manager\ --> .\profile\playlist_manager\ (>= 1.6:)
--> .\playlist_manager\ (<= 1.5:)
When an script finds it's being loaded within a portable installation, will set the default paths using
relative paths. It will also warn with popups and/or the console about the -non recommended- use of
absolute paths on portable installations. If you are using a portable installation on fixed discs with
absolute paths on panels it has no repercussion, but it becomes a problem as soon as you use it in a
removable device (whose disk letter changes). The configured paths would look for a disk letter which
would be different every time.
FOO_JESUS TIP:
-------------
If using Autosave & Autobackup component (https://www.foobar2000.org/components/view/foo_jesus) it's
recommended to add 'js_data' and 'playlist_manager' folders at
'Preferences\Advanced\Autosave & Autobackup\Files and directories to backup (...)'.
'js_data' contains config json data for most of these scripts, while 'playlist_manager' folder is the
default folder to save playlists files for the playlist manager (*).
Note the same tip applies if using the SMP script replacement Autobackup-SMP: https://regorxxx.github.io/foobar2000-SMP.github.io/scripts/autobackup-smp/
(*) When the default path is changed or when using multiple playlist manager panels (and thus different
paths), don't forget to add them to Autosave config too. There is a limit though, paths outside the
profile folder can not be autosaved by the component. That happens when tracking a playlist folder at
the place where the music resides (for relative paths playlist usage), network locations, etc. In some
cases this limitation can be bypassed by creating a SymLink at the profile folder to the external path.
For ex: C:\Foobar2000\profile\my_external_folder\ -> symlink -> H:\Music\
Presets TIP:
-------------
There are multiple useful presets for components, the UI or these SMP scripts at the folder named
'Presets'. Readmes can be found there. Some of them are meant to be loaded automatically (recipes and
themes for Search By Distance) to then be set at buttons, others are meant to be loaded on demand to
modify the panel behavior (Playlist Tools). Masstagger presets can be loaded at its panel, while UI
TF scripts are meant to be used at different places of UI config (columns, library view, etc.) if
desired. In both cases their use is in line with these SMP scripts, so they make it easier to tag or
visualize most commonly used tags, variables, etc. (for ex. a CUI script which displays keys in
Camelot Wheel notation with colors).
- AutoHotkey: for world map script automatic tagging
- Masstagger: general tagging scripts which may be useful
- Network: for playlist manager script and network drives without recycle bin
- Notepad++: to highligh picard code on notepad++
- Picard: to be used on picard as tagging scripts
- Playlist Tools: presets (menu entries) which can be added to the script
- Search by [distance]: presets (menu entries) which are loaded on the fly on the custom button
- UI: multiple UI scripts
- DUI
- CUI
- World Map: pre-filled database with artist/country tags
INFO:
-----
This is general info for all the scripts. Within all files you will find 6 [+] big scripts: Playlist
Manager, Timeline, World Map, Not a Waveform Seekbar, Search by Distance (button) and Playlist Tools
(button). And a collection of other small utilities and/or buttons (quicksearch, top tracks,
duplicates, device priority, etc.). All files have extensive comments and descriptions at the header
and all along the code, so you can check specific info about what everything does in its own file.
Every script has a github page with images, descriptions, etc. and updates must be get from there.
The root folder (with this readme) contains these scripts which can be loaded in any panel directly:
+ playlist_manager.js [+]
- https://regorxxx.github.io/foobar2000-SMP.github.io/scripts/playlist-manager-smp/
- Full documentation available on PDF. See '.\readmes' folder.
- Requires some fonts.
- _resources\fontawesome-webfont.ttf
+ world_map.js [+]
- https://regorxxx.github.io/foobar2000-SMP.github.io/scripts/world-map-smp/
- May be used along Biography 1.1.X or 1.2.X+
- Requires some fonts.
- _resources\fontawesome-webfont.ttf
- A pre-built artist-country database is provided:
presets\World Map\worldMap.json\worldMap.json
+ timeline.js [+]
- https://regorxxx.github.io/foobar2000-SMP.github.io/scripts/timeline-smp/
- Requires some fonts.
- _resources\fontawesome-webfont.ttf
+ seekbar.js [+]
- https://regorxxx.github.io/foobar2000-SMP.github.io/scripts/not-a-waveform-seekbar-smp/
+ buttons_toolbar.js [+]
- Compatible with:
- https://regorxxx.github.io/foobar2000-SMP.github.io/scripts/playlist-tools-smp/ [+]
- https://regorxxx.github.io/foobar2000-SMP.github.io/scripts/search-by-distance-smp/ [+]
- https://regorxxx.github.io/foobar2000-SMP.github.io/scripts/device-priority-smp/
- https://regorxxx.github.io/foobar2000-SMP.github.io/scripts/autobackup-smp/
- https://regorxxx.github.io/foobar2000-SMP.github.io/scripts/listenbrainz-smp/
- https://regorxxx.github.io/foobar2000-SMP.github.io/scripts/lastfm-smp/
- https://regorxxx.github.io/foobar2000-SMP.github.io/scripts/fingerprint-tools-smp/
- Toolbar with fully configurable buttons using menus.
- May use any of the buttons \ tools listed below. Missing buttons are skipped.
- Every button and tool has a readme which will be shown when you add them.
- Future scripts may be added and will be fully compatible with it.
- Requires some fonts.
- _resources\fontawesome-webfont.ttf (optional)
+ Draw Graph.html
- ALSO READ: helpers\music_graph_descriptors_xxx.js
- ALSO SEE: search_by_distance.js
- NOT meant to be used within foobar.
- Load the file in any browser to use it.
The buttons folder (the one named 'buttons') contains buttons to be loaded by the toolbar (above):
+ Playlist Tools:
- .\buttons\buttons_playlist_tools.js (below 3 buttons require this one to be loaded too)
- .\buttons\buttons_playlist_tools_macro_custom.js
- .\buttons\buttons_playlist_tools_macros.js
- .\buttons\buttons_playlist_tools_pool.js
- .\buttons\buttons_playlist_tools_submenu_custom.js.js
+ Search by Distance:
- .\buttons\buttons_search_by_distance_customizable.js (configurable with menus)
- .\buttons\buttons_search_by_distance.js
- .\buttons\buttons_search_by_distance_info.js
+ Playlist manipulation:
- .\buttons\buttons_playlist_remove_duplicates.js
- .\buttons\buttons_playlist_filter.js
- .\buttons\buttons_playlist_show_duplicates.js
- .\buttons\buttons_playlist_history.js
+ Output devices:
- .\buttons\buttons_others_device_priority.js
- .\buttons\buttons_others_device_selector
+ Library search:
- .\buttons\buttons_search_top_tracks.js
- .\buttons\buttons_search_top_tracks_from_date.js
- .\buttons\buttons_search_by_tags_combinations.js
- .\buttons\buttons_search_by_tags_queries.js
- .\buttons\buttons_search_quicksearch.js
- .\buttons\buttons_search_quickmatch.js
+ Fingerprinting:
- .\buttons\buttons_fingerprint_tools.js
+ ListenBrainz:
- .\buttons\buttons_listenbrainz_tools.js
+ Last.fm:
- .\buttons\buttons_lastfm_tools.js
+ Tagging:
- .\buttons\buttons_tags_tagger.js
- .\buttons\buttons_tags_save_tags.js
+ Autobackup:
- .\buttons\buttons_others_autobackup.js
+ Macros:
- .\buttons\buttons_others_main_menu.js
These buttons may be loaded as standalone scripts without problems but such configuration
is not supported. Only loading them via the toolbar script. The buttons folder contains multiple
example files in case anyone wants to create their own buttons using the existing framework.
The 'helpers' and 'main' folder contains common files used by most of the scripts. Don't touch
or load these alone. 'music_graph_descriptors_xxx.js', 'music_graph_descriptors_xxx_user.js'
and 'dyngenre_map_xxx.js' files, are related to 'Search by Distance' scripts. Look at those
files to understand what they do. Some users may want to add their own genres/styles at
'music_graph_descriptors_xxx_user.js', to do so a copy of the file must be placed at
(profile folder) '.\\js_data\\helpers\\' (this can be done with the customizable button).
The 'helpers-external' folder is another helper folder. Don't touch these. They are required to create
graphs within foobar or for html rendering. Read 'music_graph_descriptors_xxx.js' and check
'Draw Graph.html' in your browser (drag n drop) to see what they do.