Swap Variables
Just like Swap Libraries, but for variables.
Plugin Preview
About this plugin
На русском — ниже.
How to use
Run it from the Quick Actions or Plugin menu.
Select some layers, choose source and destination variable collections and hit Swap button.
You can choose the scope for plugin: selection, current page, all pages or local styles.
After all, you may see some error. Click on them to focus viewport on problematic objects.
How it works
Swap Variables will display all local and enabled external variable collections that actually contains variables.
When you swap these collections, plugin will recursively find every used variable, then check two things:
- variable exists in source collection,
- destination collection containt variable with same group and name.
After the plugin ends its job, it will display known ecnountered errors below Swap button.
Known limitations
- If you modified external libraries, reload file to apply changes.
- Plugin doesn't swap styles. Use Swap Libraries instead.
- Plugin can't swap strokes in section. That’s not supported by Figma API yet. Do it manually instead.
- It may take some time to parse and swap variables when there're to many nodes or variables. Take a break and make some tea.
- Scoped variables was not tested.
Possible features
- ☑️ Clickable error allows to zoom in problematic layers.
- ☑️ Collections with 0 variables are hidden.
- ☑️ Typographic variables.
- ☑️ Rebinding modes if the share the same name.
- ☑️ Swapping variables in local styles.
- ☑️ Gradients support.
- 🔲 Display number of variables in collection.
- 🔲 Selecting the option that's in second select makes them swap.
Problem? Idea? Kind words?
I accept feature suggestions and ideas to improve the plugin. No need to mess with hidden layers? Useful exceptions? If you have any ideas or issues, let me know in the comments.
Alternatively you can contact me via e-mail at [email protected] and Telegram.
Как пользоваться
Запустите плагин из поиска или меню плагинов.
Выделите несколько слоёв, выберите изначальную коллекцию и коллекцию, которая её заменит. Нажмите кнопку Swap Variables.
Можно выбрать область работы плагина: выделенные объекты, текущая страница, все страницы, либо локальные стили.
Если во время замены возникли ошибки, плагин покажет их ниже. Нажмите на ошибку, чтобы сфокусироваться на проблемном объекте.
Как работает
Swap Variables покажет все локальные и подключенные внешние библиотеки с коллекциями внутри них. Коллекции без переменных не отображаются.
Во время замены переменных, плагин будет рекурсивно искать все используемые переменные, проверяя, что:
- переменная лежит в изначальной коллекции,
- заменяющая коллекция содержит переменную с таким же именем.
Когда плагин доделает свою работу, он покажет известные ошибки под кнопкой замены.
Известные ограничения
- Если вы изменили внешние библиотеки, обновите файл, чтобы изменения применились.
- Плагин не заменяет стили. Используйте Swap Libraries.
- Плагин не заменяет обводки в секциях — этого нет в API. Замените вручную.
- Придётся подождать, если слоёв или переменных слишком много. Возьмите перерыв и заварите чая.
- Работа со scoped-переменными не проверялась.
Возможный родмап
- ☑️ Можно кликнуть на ошибку, чтобы увидеть проблемный объект.
- ☑️ Коллекции без переменных не отображаются.
- ☑️ Поддержка переменных для типографики.
- ☑️ Перепривязка модов с одинаковым названием.
- ☑️ Замена переменных в локальных стилях.
- ☑️ Поддержка градиентов.
- 🔲 Отображать количество переменных рядом с коллекциями.
- 🔲 Выбор той же коллекции меняет выбранные коллекции местами.
Сложности, идеи, отзывы?
Я принимаю запросы на фичи и идеи для улучшения. Хотите не трогать скрытые слои? Добавить полезные исключения? Если есть идеи или проблемы, напишите в комменты.
А ещё можно связаться со мной по почте [email protected] или в телеграме.
💙
Plugin Details
Version | 29 |
---|---|
Created | January 30, 2024 |
Last Updated | February 4, 2025 |
Category | design-tools-other |
Creator | Никита Денисов |
Stats | 462 installs, 126 likes |
Pricing | Free |
Technical Details
- API:1.0.0
- UI:src/ui.html
- main:dist/code.js
- Document Access:dynamic-page
- Editor Types:figma
- Allowed Domains:
- https://fonts.googleapis.com
- https://fonts.gstatic.com
More Like This
Discover other plugins in the design-tools-other category.