При запуске gnetlist загружает целый ряд файлов настроек, если они имеются:
$PREFIX/share/gEDA/system-gafrc — файл системных настроек комплекта программ gEDA/gaf;$HOME/.gEDA/gafrc — файл пользовательских настроек комплекта программ gEDA/gaf;gafrc — файл настроек комплекта программ gEDA/gaf для текущего рабочего каталога;$PREFIX/share/gEDA/system-gnetlistrc — файл системных настроек gnetlist;$HOME/.gEDA/gnetlistrc — файл пользовательских настроек gnetlist;gnetlistrc — файл настроек gnetlist для текущего рабочего каталога.
$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”.