Bulk edit field visibility of custom fields?

I have imported a design from Altium which had numerous custom fields for each part. The part value shows up in a “ALTIUM_VALUE” field (visible), while the “Value” field has the manufacturer part number.

So, I need to…

  1. move the value of the “ALTIUM_VALUE” field into the “Value” field
  2. disable visibility of the “ALTIUM_VALUE” field
  3. enable visibility of the “Value” field.

Between the Properties Manager and the Symbol Fields Table, one would think there would be a way to do this. But… no, not that I can find.

I found a bulk way to accomplish #1 (select multiple parts and edit the “Value” field to “${ALTIUM_VALUE}”).

I found a bulk way to accomplish #3 (select multiple parts and do “Change Symbols”, and set “Update field visibilities” and the “Value” field (that’s really convoluted in my opinion).

Any suggestions how to accomplish this currently?

If this is not supported currently, it really should be. There are several ways this could work. One natural intuitive way would be to allow ‘E’ edit of multiple selected parts, and simple use a “-- mixed values --” type of approach like is used in the Symbol Fields Table, or the typical “grayed” approach for checkboxes, etc. I think the multi-edit may already be an existing feature request.

Another approach would be to use an approach similar to the the Symbol Field Editor, but include all part settings, not just fields.

Totally not sure if this will work for your situation, but remember that KiCad files can be edited with a text editor.

Sometimes Find>Replace in a text editor can do amazing things.

Be sure to make a backup copy first!!

1 Like

For value swapping, can you cut and paste using a multi-select in the fields table? Ctrl-click to start the range, shift-click the end of the column. You may need an intermediate column, or even a spreadsheet program to do a swap.

I don’t have a good solution to the bulk-change of visibility settings, though.

Not sure if wanting to change/Edit All of your symbols or just specific project’s symbols but, you can do both with Python code.

You can use a Python IDE (most likely your system has a default one) and/or you can use Kicad’s Python Console.

I demo both ways in the two video’s posted here. The demo shows Bulk editing of Footprint but, that doesn’t matter, the point is showing how to change Any text in Any file so, read a watch.

If you inspect the kicad_sym and kicad_sch files, you may see fields with Visibility showing ‘hide’ or nothing but can add it…

Example:

Then, try it on a dumb/test project/file…

I found the KiField python script. It seems to be useful for bulk editing part values.

However, as “luck” would have it, I still can’t bulk-enable visibility of the “Value” field. Apparently there’s a bug in KiField prevents that functionality from working on the built-in “Value” field.

It’s like some supernatural force is intent on forcing me to edit EACH AND EVERY part to enable the “Value” field visibility.

Very.
Frustrating.

This should not be so difficult. KiCad, please.

From the issue created:

The Edit Text and Graphic Properties dialog can do the visibility changes requested.

1 Like

Drat! You beat me to it. I was just coming here to follow up after my deserved humbling moment on gitlab, lol.

Thanks. For those who haven’t used this menu, it’s under Edit → Edit Text and Graphic Properties

Jon, I notice there is no menu bar button for this… what is the thought behind which functions get a button? “Edit Text and Graphic Properties” being fairly significant and useful, it seems like it deserves a button.

1 Like