Ashung / Automate-Sketch

Make your workflow more efficient.
MIT License
936 stars 73 forks source link

Feature Request : A Concept for Symbol management system #63

Open Raghav789 opened 6 years ago

Raghav789 commented 6 years ago

This plugin never seizes to amaze me, the sheer amount of control it's provides is mind-boggling. even after that, the developer @ashung helps anyone in need of further automation by providing scripts directly.

So I was thinking of a bit complex symbol Management system. I think if anyone can do it It's you

  1. primarily all symbols with the same size gets arranged horizontally with the exact same width between,from 24 up to 100 pt apart and the group width of all same size artboard (that is when you select all artboard/symbol) should not exceed 1000pt width size after that the symbols should be placed in next line/vertical alignment For example, all 24pt symbols get's placed horizontally up to 12 symbols and if we have more 24pt icon those will move to the next line which is 24 pt apart

(for Total group width <= 600 place the X-width symbols X-width(min=24,max=100) apart)

2.Above 'same size rule' must be overridden only when a path prefix(/) is applied then

a.It will place the master symbol vertically first, After 50pt it'll start placing the nested symbols

b.All symbol with the same hight comes in the same group with the similar rule where padding/width between Artboard/Symbol determined by the lowest width of two.

(for Total group width <= 600 place the Y-height & X-width symbols, [{Xs-width(smallest of two)} (min=24,max=100)] apart From highest X-width to lowest X-width )

c.then it will go for the smaller height object and when it needs to go for the second row (to full fill 600 width condition) the distance/gap will be same as the height of the group<=50 and it will get aligned vertically to the first object of its group. when the next height group cannot be contained horizontally because of 600width condition it will move to the next row and new rows always stats aligned to the master symbol. and vertical gap/distance from the first symbol in the row will be calculated by Height of the symbol. and symbols will move to next row for either 600 maximum width condition or it finds and another symbol overlapping position then same thing repeat

I'm sure it needs even more conditional approach. Plese, see my example (it's for prefixed symbols) can something like this can be done? maybe we don't need this much-complicated system do you have any idea? I'm trying to find the ideal automatic symbol/component management. screen shot 2018-04-21 at 2 17 27 pm

Ashung commented 6 years ago

It is hard, I will try.

Raghav789 commented 6 years ago

Thank you for considering it, it might need not be like this, I'm trying to achieve optimum spacing management. which can now only possible by manual labor.

Ashung commented 6 years ago

You can use this plugin https://github.com/sonburn/symbol-organizer