Hello ivla
Yep that's exactly it, the script can be packaged in a tar file and
will be installable the same way as plugins.
The script and .wscr file won't need any changes to turn it into
a plugin script, and the extra .conf file provides the menu location.
For the .tar file, there might be a fourth file that is like a "manifest"
so wings knows which plugin to ask about installing the .tar file.
An example package might have:
the file special_shape_bumpy.conf might look like:
Some explanations:
.wscr is in a subfolder "special_shape_bumpy" relative to the .conf file.
It will be added to a menu "Bumpy Shape" inside a custom sub menu
called "Special Shapes", inside the new shape menu.
For each language a set of strings can be made. The unique
string "unique-script-name.author-name.special-shape-bumpy.1"
needs to match though.
(03-24-2025, 08:20 AM)ivla Wrote: You mean it can be packed like other plugins in .tar file?
Show an example, please.
Yep that's exactly it, the script can be packaged in a tar file and
will be installable the same way as plugins.
The script and .wscr file won't need any changes to turn it into
a plugin script, and the extra .conf file provides the menu location.
For the .tar file, there might be a fourth file that is like a "manifest"
so wings knows which plugin to ask about installing the .tar file.
An example package might have:
Code:
manifest
special_shape_bumpy.conf
special_shape_bumpy/special_shape_bumpy.wscr
special_shape_bumpy/special_shape_bumpy.py
the file special_shape_bumpy.conf might look like:
Code:
{"unique-script-name.author-name.special-shape-bumpy.1", [
{wscr, "special_shape_bumpy/special_shape_bumpy.wscr"},
{menu, [
{[shape, special_shapes, special_shape_bumpy], []}
]}
]}.
{strings, [
{plugin, "unique-script-name.author-name.special-shape-bumpy.1"},
{"en", [
{{plugin,name}, "Bumpy Shape"},
{{menu,special_shapes}, "Special Shapes"},
{{menu,special_shape_bumpy}, "Bumpy Shape"}
]}
]}.
Some explanations:
Code:
{wscr, "special_shape_bumpy/special_shape_bumpy.wscr"},
Code:
{menu, [
{[shape, special_shapes, special_shape_bumpy], []}
]}
called "Special Shapes", inside the new shape menu.
Code:
{strings, [
{plugin, "unique-script-name.author-name.special-shape-bumpy.1"},
{"en", [
{{plugin,name}, "Bumpy Shape"},
{{menu,special_shapes}, "Special Shapes"},
{{menu,special_shape_bumpy}, "Bumpy Shape"}
]}
]}.
string "unique-script-name.author-name.special-shape-bumpy.1"
needs to match though.