Skip to main content
Inspiring
February 10, 2024
Answered

Remove unused Swatch Groups

  • February 10, 2024
  • 1 reply
  • 465 views

Hi, guys!

Is there any script code to remove unused core sample group? I know the code to erase color swatches, but not groups.
Exmple to remove color swatches (not groups):

 

var allDocs = app.documents;

for (var i = 0; i < allDocs.length; i++) {
trashUnusedSwatch (allDocs[i]);
}

function trashUnusedSwatch(myDocument){
var id, sw;
while (myDocument.unusedSwatches[0].name != "") {
id = myDocument.unusedSwatches[0].id;
sw = myDocument.swatches.itemByID(id);
sw.remove();
}
}

 

This topic has been closed for replies.
Correct answer danaken3

Try this:

var allDocs = app.documents;

for (var i = 0; i < allDocs.length; i++) {
    trashUnusedSwatchGroups (allDocs[i]);
}

function trashUnusedSwatchGroups(myDocument){
    for (var j=myDocument.colorGroups.count()-1; j>=0; j--) {
        if(myDocument.colorGroups[j].colorGroupSwatches.length == 0) {
            myDocument.colorGroups[j].remove();
        }
    }
}

1 reply

danaken3
danaken3Correct answer
Participating Frequently
February 10, 2024

Try this:

var allDocs = app.documents;

for (var i = 0; i < allDocs.length; i++) {
    trashUnusedSwatchGroups (allDocs[i]);
}

function trashUnusedSwatchGroups(myDocument){
    for (var j=myDocument.colorGroups.count()-1; j>=0; j--) {
        if(myDocument.colorGroups[j].colorGroupSwatches.length == 0) {
            myDocument.colorGroups[j].remove();
        }
    }
}
eusoujpAuthor
Inspiring
February 11, 2024

Thanks so much!