sl23 wrote: ↑July 5th, 2021, 5:50 pmSo my original 'gripe' is really a request I suppose that future skins, not part of suite, have any resources placed in subfolders:
#@#Resorces/Name_of_skin
Wait a minute, I thought you wanted that skins that
are part of a suite to structure their resources in such a way that one could differentiate between which resources are used by which skin, i.e.
[SuiteFolder]\@Resources\Weather\...,
[SuiteFolder]\@Resources\Visualizer\...,
[SuiteFolder]\@Resources\Feeds\... and so on, where Weather, Visualizer and Feeds were hypothetically individual skins (aka .ini files) of that suite. That would have some logic as someone else could easily grab any of the individual skins of that suite to build his own "suite" / "setup" made of various skins from different suite sources (e.g. jsmorley's weather skin placed near death.crafter's GPU skin and my clock skin or similar).
Your example above is indeed redundant, as death.crafter said. First, the
#@# already means
[SkinFolder]\@Resources, so, according to your example, a hypothetical individual (?!) skin named Awesome would be placed in the folder:
Code: Select all
C:\Users\[UserName]\Documents\Rainmeter\Skins\Awesome\
while its resources would be placed in the folder:
Code: Select all
C:\Users\[UserName]\Documents\Rainmeter\Skins\Awesome\@Resources\Resources\Awesome\
Notice how both Awesome and Resources are repeating themselves in the 2nd path above. Not good. Long path, redundant path, messy path - don't go that path.
The whole advantage of the @Resources folder, aside from offering an optional "default" place to store a skin or suite resources, is the fact that a skin designer can write just 3 characters to use it, i.e.
#@# for its
entire path. Many skin authors take advantage of that and place all their resources there (i.e. in the @Resources folder of their skin or suite), shortening up their code and making it clearer. That is, of course, problematic for a user who wants to identify a suite skin's dependencies, but causes no problem if the skin is an individual one.
Other than that, what skins (and from which suites) you actually want to "combine" into your own "suite"? Maybe creating a thread on this subject will be of some use and folks will be able to help you identify what your suite should contain to make it work? In the meantime, an (improvable) Regular Expression search pattern for Notepad++ that should identify most (file) dependencies (irrespective if they are in options or bangs) when triggered in a skin's main .ini file, maybe it will be of some help:
Code: Select all
(?i)(?<=\s)(?:@Include.*?|LocalFont.*?|ImagePath|MouseActionCursorName|ToolTipIcon|BarImage|BitmapImage|ButtonImage|PrimaryImage|SecondaryImage|BothImage|PrimaryImagePath|SecondaryImagePath|BothImagePath|ImageName|PlayerPath|ScriptFile|MeasureName|Plugin|URL)[ =].*?(?= "|\]|\R)
The last 3 patterns in the (?:non capturing group), i.e.
|MeasureName|Plugin|URL are included because in some cases you can have an image path set by MeasureName, a plugin placed somewhere, or a local URL - feel free to remove any |pattern you don't need.
Note: Of course, if the above options represent some other measure in the skin, you'd still need to figure out what that measure's value will be, but at least the regex above will point to such a measure...