Is there a way to view/query all of the rackspaces for a particular plugin?

I’m trying to clean up some issues I have with Arturia plugins (custom presets inconsistently not saving - something that has been brought here before). What I want to do is go back and change all of my Arturia VST3 plugins to VST2 because it seems to work better. Problem is that my main coverband gig file has over 200 rackspaces in there. I could load each one manually, but it would be a lot easier if I could just query them somehow.

1 Like

Did you report the issue to Arturia?

You can save a Gig File with the extension xml in Windows Explorer or Mac Finder.
Then you can load that xml-file into Excel

Here you see the name of the used plugins

And here you see the name of the rackspace

In Excel now you can search for your plugin

Better you can copy the 2 columns and paste in an additional sheet

6 Likes

Another option is to use XSL Transformation

Open this site with your web Browser

Upload the gig file (copied to file with extension xml)

Copy this XSL Code

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
  <html>
  <body>
    <table border="1">
      <tr bgcolor="#9acd32">
        <th>Rackspace</th>
        <th>Plugin</th>
        <th>Format</th>
      </tr>
      <xsl:for-each select="/GIGRACK/RACKSPACE">
      <xsl:for-each select="PROCESSOR/PLUGIN">
      <tr>
        <td><xsl:value-of select="../../@name"/></td>
        <td><xsl:value-of select="@name"/></td>
        <td><xsl:value-of select="@format"/></td>
      </tr>
      </xsl:for-each>
      </xsl:for-each>
    </table>
  </body>
  </html>
</xsl:template>
</xsl:stylesheet>

Press “Transform XML to new window”

In the new window you see this

You can save this as a HTML-FIle and open it with your web-browser
Bildschirmfoto 2022-11-03 um 13.55.15

BUT: The size of the file you can upload is restricted to 2MB

2 Likes

Another option is to use Perl
On MAC:
perl tr.pl

use strict;
use warnings;

use XML::LibXSLT;

my ($xmlfile, $xsltfile,$outfile) = qw/ blue.xml blue.xsl out.html /;

my $xslt = XML::LibXSLT->new;
my $stylesheet = $xslt->parse_stylesheet_file($xsltfile);
my $results    = $stylesheet->transform_file($xmlfile);

$stylesheet->output_file($results,$outfile);

Just create an ascii file, put the code above in it and save as tr.pl

It reads in this example the file blue.xml (just a copy from blue.gig) and applies the XSL-Transformation in the file blue.xls and puts the HTML output in the file out.html

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
  <html>
  <body>
    <table border="1">
      <tr bgcolor="#9acd32">
        <th>Rackspace</th>
        <th>Plugin</th>
        <th>Format</th>
      </tr>
      <xsl:for-each select="/GIGRACK/RACKSPACE">
      <xsl:for-each select="PROCESSOR/PLUGIN">
      <tr>
        <td><xsl:value-of select="../../@name"/></td>
        <td><xsl:value-of select="@name"/></td>
        <td><xsl:value-of select="@format"/></td>
      </tr>
      </xsl:for-each>
      </xsl:for-each>
    </table>
  </body>
  </html>
</xsl:template>
</xsl:stylesheet>

Content of blue.xsl

1 Like

You have to be on drugs to use Perl! At least use Python :slight_smile: :slight_smile:

1 Like

Hm, just saw this after ‘having been linked’ in the Hacks compilation…
Looks quite complicated, but also a solution for the same problem or requirements.
I still prefer my solution with a Python script and some filtering afterwards in Excel :slight_smile:

This is terrific! I recorded an Excel macro that deletes all the non-text columns, so I can see how GP is storing my names. And I’m so glad I did, b/c this uncovered a glaring omission in the Win10 version of my macOS gigfile: I’d forgotten to set the MIDI port aliases in Rig Manager! So I set them to be identical to the original macOS version.

One question: the “name54” column (module type + alias) is now identical, in my Win and Mac versions, but the “descriptiveName55” columns are slightly different: Win10 has “micro lite: Port 1” where macOS has “micro lite Port 1” (no colon). I don’t see a way to edit this descriptive name in Rig Manager, and unfortunately my MacBook doesn’t recognize “micro lite: Port 1”, etc., so I have to “Change MIDI Input Device” on each plugin. I realize that with the “change all similar MIDI IN blocks” option, I only have to do this once per MIDI port, but I’m wondering if there’s a way to avoid this.

You can also just open the gig file in Notepad, Visual Studio Code, or really any text editor you’d like.

Don’t tell the devs, but I manually edit my Gig files from time to time in text editors when I have a bunch of something I want to change and “Find and Replace” is up to the job. Use at your own risk, of course!

2 Likes

Excellent point. Excel is better for getting a visual sense of the entire file, but you’re right, I’ll fix the names in Notepad+.

I usually have issues running Python on both Mac and Windows. :frowning:

Microsoft also has an open source product that is helpful.
https://microsoft.github.io/XmlNotepad/

Don’t worry, the next update will have this improved (can’t reveal more). Stay tuned.

1 Like