start => gnetlist_ug

« Неявные выводы | Руководство пользователя gEDA gnetlist | Аргументы командной строки »

## Настройка gnetlist

При запуске gnetlist загружает целый ряд файлов настроек, если они имеются:

1. `$PREFIX/share/gEDA/system-gafrc` — файл системных настроек комплекта программ gEDA/gaf;
2. `$HOME/.gEDA/gafrc` — файл пользовательских настроек комплекта программ gEDA/gaf;
3. `gafrc` — файл настроек комплекта программ gEDA/gaf для текущего рабочего каталога;
4. `$PREFIX/share/gEDA/system-gnetlistrc` — файл системных настроек gnetlist;
5. `$HOME/.gEDA/gnetlistrc` — файл пользовательских настроек gnetlist;
6. `gnetlistrc` — файл настроек gnetlist для текущего рабочего каталога.

`$PREFIX` — это основной каталог установки gnetlist (на большинстве систем — `/usr`), а `$HOME` — ваш домашний каталог.

Эти файлы представляют собой скрипты на языке Scheme, выполняемые интерпретатором этого языка. Это значит, что файлы настроек можно использовать и для настройки gnetlist под себя, и для расширения функциональности программы.

В файлах настроек очень много различных параметров, влияющих на работу gschem, и здесь приводятся только самые общеупотребительные из них. Полный их список можно найти в файле `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”.