я мало рисую схемы в CAD-ах, больше пишу на HDL (для ПЛИС-ов и ASIC-ов)
там есть проблема с визуализацией - то есть читаемая человеком картинка (так называемое netlist view) может быть, по моему, только интерактивной, то есть можно посмотреть какую-то цепь или какой-то фрагмент. схема, даже небольшая, которую человек может нарисовать достаточно внятной, в автоматическом исполнении будет нечитаемой.
это наблюдается в тулзах каденса/синопсиса/ментора и т.д. - то есть хорошего решения я не видел
в схемотехнике описывается структурная схема - то есть нетлист, использовать для этого HDL вряд ли целесообразно, с теми же ПЛИС и АЗИКами было практически также, пока не появился поведенческий синтез - то есть человек описывает _поведение_ узла на HDL, а структурную схему генерит синтезатор по этому описанию.
в проектировании PCB вряд ли появятся такие инструменты. то есть я сомневаюсь в переходе на HDL в разработках плат
а по поводу программирования в кадовских скриптах - это про всяческие тулзы для исправления/добавления функций в интерфейс.
для того же ПАДСа я ввожу элемент в экселевскую табличку, а скрипт из этой таблички генерит символ (этот скрипт я скачал давно у финов и дистриб потерял, а сейчас они сделали его платным, если у кого-то есть старая версия, прошу поделится -
http://www.designsystems.fi/Products/PADSUtilities/pa_e.html )
также у нас была проблема с обновлением компонентов в схеме в соответствии с закупленными - писал на питоне скрипт для вытягивания ВОМа в эксель и заливки исправленного ВОМа в схему, но не прижилось - сейчас даже исходников не нашел
а вообще примеров скриптов для ПАДСа полно
-------------
еще один механизм - это ECO файлы, то есть коррекции к схеме/pcb - то есть если тул умеет такие файлы брать, то и поддержки скриптов не нужно - я опять же сталкивался с этим в ПАДСе - там они достаточно хитро ЕСО шные исправления в схему вносят, используют метки, но все-равно приятная глазу картинка портится
-------------
чтобы закончить мысль - скрипты для работы с CAD-ами имеет смысл применять для каких-то ограниченных действий - генерация символов/футпринтов (обычно есть в дистрибах), генерация отчетов (половина примеров об этом), DRC (вторая половина), какие-то улучшатели - ренумерация, замена элементов, замена аттрибутов и т.п.