При запуске gnetlist загружает целый ряд файлов настроек, если они имеются:
$PREFIX/share/gEDA/system-gafrc$HOME/.gEDA/gafrc.gafrc в текущем рабочем каталоге.$PREFIX/share/gEDA/system-gnetlistrc$HOME/.gEDA/gnetlistrcgnetlistrc в текущем рабочем каталоге.
$PREFIX — это основной каталог установки gnetlist (на большинстве систем
— /usr), а $HOME — ваш домашний каталог.
Эти файлы представляют собой скрипты на языке Scheme, выполняемые интерпретатором этого языка. Это значит, что файлы настроек можно использовать и для настройки gnetlist под себя, и для расширения функциональности программы.
system-gnetlistrc, который входит в комплект
установки gEDA/gaf.
При использовании gnetlist очень важно, чтобы библиотеки ваших символов
и исходных данных были настроены корректно. Для того, чтобы и gschem, и
gnetlist использовали одни и те же библиотеки, эти настройки почти
всегда нужно добавлять в файл настроек всего комплекта gaf (в один из
файлов ”gafrc”). Объяснение того, как настраиваются библиотеки
символов и исходных данных см. в
Руководстве пользователя gEDA gschem.
При работе с иерархическими схемами gnetlist переименовывает соединения и компоненты на основе того, где в иерархической структуре они располагаются. Вы можете настроить, как выполняется эта “модификация” и при необходимости отключить её совсем.
По умолчанию gnetlist добавляет друг к другу имена на каждом уровне
иерархии, используя в качестве разделителя символ ”/” (так что компонент
“U1” в подсхеме “A3” становится “A3/U1”). Для изменения этого поведения
для позиционных обозначений компонентов (“refdes”) могут использоваться
функции hierarchy-uref-order и hierarchy-uref-separator.
Например, для изменения модификации “refdes” таким образом, чтобы к
именам на каждом уровне добавлялся в качестве разделителя префикс ”:”,
можно использовать:
(hierarchy-uref-order "prepend") (hierarchy-uref-separator ":")
Теперь “U1” в подсхеме “A3” будет переименован программой gnetlist в “U1:A3”.
Функция hierarchy-uref-mangle может использоваться для полного
отключения модификации “refdes”:
(hierarchy-uref-mangle "disabled")
Если это и может быть полезно, то очень редко.
Похожие настройки есть для группы имён соединений, установленных с
помощью атрибутов ”netname=” и для группы имён соединений,
использующих Неявные выводы и атрибуты ”net=”.
hierarchy-netname-order, hierarchy-netname-separator и hierarchy-netname-mangle управляют модификацией ”netname=”.hierarchy-netattrib-order, hierarchy-netattrib-separator и hierarchy-netattrib-mangle управляют модификацией ”net=”.
Иногда желательно полностью отключить обработку иерархической структуры.
Это можно сделать с помощью ключа hierarchy-traversal:
(hierarchy-traversal "disabled")
Настраивать производимое программой gnetlist автоматическое именование
соединений, не имеющих имён в файлах схем, можно с помощью функции
unnamed-netname. К концу заданной вами строки gnetlist будет
добавлять уникальные номера. Например:
(unnamed-netname "unnamed_net")
Это приведёт к тому, что “безымянным” соединениям gnetlist будет автоматически назначать имена вида “unnamed_net12345”.