Диалоговое окно выбора символов представляет список названий разделов библиотеки. Щёлкните слева от названия по направленному вправо треугольнику. Список развернётся. Прокрутите его вниз до символа, который нужно добавить в схему.
В версиях, начиная с 20060824 и более поздних, сделайте следующее:
Возможно это для вас уже привычно.
Те, кто пользуется более старыми версиями gschem, могут воспользоваться одним из следующих трёх способов:
Первый:
Второй:
Третий:
Для переключения такого поведения нажмите [o][r]. То есть сначала клавишу [o], затем [r]. Выполнение команды переключения отразится в окне состояния. Эта команда доступна также из меню Настройки [Options].
Эту же процедуру можно использовать и более широко и редактировать в символе что-угодно. (При этом, конечно, вместо Правка текста… [Edit text…] нужно выбрать другую желаемую функцию.)
Да, линию над текстом задать можно. Обратная косая черта и знак подчёркивания отмечают начало текста, над которым должна быть линия. Вторая комбинация этих символов вновь включит обычный текст. Пример: дважды щёлкните по атрибуту и наберите “\_это\_”.
Учтите, при трансляции в pcb линии над текстом в топологии не будет. Обратная косая черта игнорируется, поэтому по краям текста, над которым должна была бы быть линия, останутся знаки подчёркивания.
Когда компонент заблокирован, средней кнопкой мыши выделить его нельзя, но можно выделить рамкой. Для выделения компонента рамкой нужно, нажав и удерживая левую кнопку мыши, переместить мышь, определив таким образом прямоугольную область, содержащую нужный компонент. Затем, чтобы разблокировать компонент, выполнить команду Правка → Разблокировка [Edit → Unlock].
Измените файл system-gschemrc
или добавьте следующее в файл
gschemrc
(либо в ~/.gEDA/gschemrc
, либо в gschemrc
в
локальном каталоге, из которого вы запускаете gschem):
(load (string-append gedadata "/scheme/auto-uref.scm")) ; загрузить скрипт автонумерации (add-hook! add-component-hook auto-uref) ; автонумерация при добавлении компонента (add-hook! copy-component-hook auto-uref) ; автонумерация при копировании компонента
Обратите внимание: начиная с версии gschem 1.2, имя переменной, задающей путь доступа к скрипту, изменилось:
(load (string-append geda-data-path "/scheme/auto-uref.scm")) ; загрузить скрипт автонумерации (add-hook! add-component-hook auto-uref) ; автонумерация при добавлении компонента (add-hook! copy-component-hook auto-uref) ; автонумерация при копировании компонента
“Шина” — это всего лишь декорация. Генератор списка соединений её игнорирует.
Фактическая работа по соединению точек между собой возложена на атрибут
netname=
— это то, что gnetlist читает и преобразует в список
соединений. Невозможно присоединить дискретную линию или “бит” к шине, потому
что, ещё раз, это просто графический элемент.
Некоторым пользователям кажется удобной такая организация соединений,
когда в их имена входит название шины. Например, к каждому символу ответвления
от шины (“busripper”) можно добавить атрибут вида net=busA:1
, что облегчит
сортировку соединений.
Горячие клавиши определяются при запуске программы во время чтения файлов
настроек. Стандартные настройки привязки клавиш заданы в файле
system-gschemrc
. Если хочется их изменить, рекомендуется скопировать
соответствующий раздел раскладки в локальный файл настроек
($HOME/.gEDA/gschemrc или $PWD/gschemrc
) и уже там его модифицировать.
Установки system-gschemrc
будут заменены настройками изменённого
раздела локального файла настроек.
Стандартные настройки таковы:
Привязку средней кнопки можно изменить, добавив в файл gschemrc
одну
из следующих строк:
(middle-button "action") ;привязка по умолчанию, перемещение или копирование объекта
или:
(middle-button "stroke") ;использование жестов (для этого нужно, чтобы была установлена библиотека libstroke)
или:
(middle-button "repeat") ;повтор последней выполненной команды
Привязку правой кнопки можно изменить, добавив в файл gschemrc
одну
из следующих строк:
(third-button "popup") ;привязка по умолчанию -- вызов контекстного меню
или:
(third-button "mousepan") ;панорамирование в окне схемы
Более подробную информацию об этих настройках смотрите в файле
${install_prefix}/share/gEDA/system-gschemrc
.
Да. Листы подсхем в основной схеме представляются специальными символами.
В разделе документации gschem можно найти пример иерархического проекта
(geda-doc/examples/gTAG/gTAG.sch
). В настоящее время нет способа создать
символ подсхемы из существующей схемы автоматически. Его придётся
чертить вручную. Мы были бы очень признательны за любые заплаты или сторонние
скрипты, с помощью которых можно было бы это сделать.
Атрибут source=
, прикреплённый к символу подсхемы, задаст путь доступа к
файлу этой подсхемы. Выводы символа соответствуют
портам — переходам из основной схемы в подсхему.
Эти переходы должны соответствовать позиционным обозначениям
символов портов в подсхеме. Символами портов в текущей библиотеке gEDA
являются in-1.sym
и out-1.sym
. Для навигации в иерархии листов
подсхем используйте меню иерархии. Также для этого можно использовать менеджер
страниц.
Для преобразования иерархии в список соединений просто запустите gsch2pcb
для основной схемы. По умолчанию имена соединений и позиционные
обозначения компонентов являются строго локальными для подсхемы. При
добавлении в список соединений они получают префикс в виде позиционного
обозначения символа подсхемы. Можно использовать даже несколько экземпляров
символа подсхемы, не опасаясь коротких замыканий. Будут ли изменяться
имена соединений или позиционные обозначения, и оставаться таким образом
локальными для подсхемы, или не будут, можно настроить в файле конфигурации
gnetlistrc
. Скопируйте соответствующие строки из
system-gnetlistrc
в gnetlistrc
в текущем рабочем каталоге или
в $HOME/.gEDA/gnetlistrc
. Удобной настройкой может быть такая, когда
соединения, представляемые символами питания, становятся глобальными, в то
время как обычные соединения остаются локальными для подсхемы. Этого можно
добиться разрешением hierarchy-netattrib-mangle
.
Да. Просто прикрепите к символу атрибут source=
несколько раз с разными
значениями. Войдите через этот символ в схему, затем страницы данного уровня можно
листать клавишами [Page Up] / [Page Down].
Да. Для этого нужно, чтобы в декларациях (source-library "...")
и
(component-library "...")
в gafrc
были перечислены все нужные
каталоги.
В отношении текущего листа все имена соединений глобальны. Являются ли
имена соединений глобальными в иерархическом стеке схем или нет, зависит от
настроек в gnetlistrc
. Этот файл может находиться в
$HOME/.gEDA
или в локальном каталоге вместе со схемами. Умолчания
установлены в system-gschemrc
. Если хочется другого поведения,
скопируйте соответствующие строки в локальный gnetlistrc
.
Способа сделать определённые имена соединений глобальными нет. Однако
имена для соединений можно разделить на те, что задаются с помощью атрибута
netname
, и те, что определяются атрибутом net
. Второй атрибут
предназначен для настройки соединений символов питания. При его использовании
соединения питания к символам подсхем подводить не нужно.
Когда схема открывается, libgeda меняет каталог. Так что при обработке
схемы она должна загрузить любой gafrc
, и в подкаталогах тоже.
Хотя поддержка подсхем охватывает многие аспекты иерархических проектов, несколько ограничений существует:
Не стесняйтесь исправить эти вопросы. Помощь приветствуется.
Окно журналирования в gschem можно отвадить вот
такой строкой в gschemrc
:
(log-window "later")
Можно добавить эту строку или в $HOME/.gEDA/gschemrc
, или в каталог проекта,
или изменить файл $INSTALLDIR/share/gEDA/system-gschemrc
, чтобы сделать это по
умолчанию для всей системы.
Есть веб-сайт gedasymbols.org, предназначенный
для ресурсов, которыми пользователи содействуют проекту gEDA. Есть поиск по
сайту, предпросмотр символов и их можно загрузить по отдельности. Если
соответствующим образом сконфигурировать свой файл gafrc
, то эти
символы можно разместить прямо рядом с файлами схем своего проекта. Может быть
вам следует создать локальную библиотеку символов, чтобы все проекты имели
доступ к новым символам. Смотрите подробности
ниже.
Можно загрузить даже всё содержимое, добавленное пользователями gedasymbols. Смотрите инструкции о том, как получить доступ к gedasymbols с помощью CVS.
Эта терминология выросла из дискуссии, которая часто возникает в списках рассылки geda-user и geda-dev. Лёгкий символ — это символ, содержащий очень мало встроенных атрибутов. При этом почти все атрибуты пользователю придётся добавлять на этапе редактирования схемы (например, в gschem или в gattrib). Тяжёлый символ — это такой, многие атрибуты которого (такие как посадочные места компонентов, названия SPICE-моделей и пр.) уже встроены в файл символа. Поэтому на этапе редактирования схемы атрибуты к тяжёлому символу прикреплять практически не требуется — просто вставляете его и всё готово.
Дебаты между сторонниками тяжёлых и лёгких символов очень детальны и запутаны.
В целом, сторонники тяжёлых символов думают, что они позволяют достичь большей
интеграции между gschem и pcb, так как важные атрибуты топологии
(такие как
название
посадочного места)
уже встроены в символ. Считается, что это хорошо для новых пользователей
(нубов), которые просто хотят спроектировать простую плату, и их не волнует
миллион вариантов, существующих даже для обычного резистора
(например, различные корпуса, ТКС, точность, состав материала и т. д.).
Сторонники лёгких символов предпочитают работать с атрибутами при
редактировании схемы, потому что думают, что это более гибко. Они сразу
указывают, что если пытаться обозначить все различия между разными вариациями
компонентов, библиотека тяжёлых символов быстро разрастётся в тысячи
компонентов с абсурдно длинными названиями. Они также отмечают, что
предпочтительным инструментом для обработки атрибутов при редактировании схем
(то есть для файлов .sch
) является утилита gattrib.
В gEDA/gaf по умолчанию используются лёгкие символы, хотя такую конфигурацию можно изменить и использовать тяжёлые. Более подробно об этом можно узнать из следующих дискуссий в списке рассылки geda-user:
http://archives.seul.org/geda/user/Jun-2005/msg00001.html
Подавляющее большинство символов в библиотеке создано с выравниванием по сетке в 100 единиц. Убедитесь, что сетка настроена на 100 единиц. Чтобы проверить или изменить это значение, выберите Шаг сетки привязки… [Snap Grid Spacing…] в меню настроек.
Символы добавлены в библиотеку такими же пользователями, как и вы. Некоторые люди используют другие настройки сетки, нежели остальные (например, 50 единиц вместо 100). Если вы обнаружили символ, который, кажется, не выравнивается по сетке, попробуйте уменьшить размер сетки и переместить символ так, чтобы концы его выводов “сидели” на сетке. Потом вернитесь к настройкам сетки, подходящим для вас. Кроме того, вы можете послать исправленный символ в список рассылки geda-user.
Символы, находящиеся на сайте gedasymbols.org, ещё более подогнаны под конкретные требования их авторов. Да, документация gEDA строго рекомендует использовать размер сетки 100 единиц. Но каждый любит делать всё по-своему и абсолютного диктатора, который мог бы навязать правила для вносимых в проект символов, нет. Поэтому вам просто надо знать об этой возможности.
Ответ: misc
→ nc-left, nc-right, nc-top, nc-bottom
.
Будьте осторожны: подчас при этом может быть создано соединение с названием no_connect (или NC??), что может заставить gnetlist соединить эти неподключенные выводы между собой, чего вы, скорее всего, не хотели бы.
Если вы хотите, чтобы символ был чисто графическим (не имел электрических
соединений), добавьте атрибут graphical=1
. Такие символы
полностью игнорируются генератором списка соединений.
Невидимые атрибуты, за некоторыми исключениями, из символов в схему не
выносятся. Чтобы они выносились, нужно сделать следующее.
Поищите следующие ключевые слова в файле system-gafrc
:
(attribute-promotion "enabled"); (promote-invisible "disabled") ; <= Вот это (keep-invisible "enabled")
Добавьте в свой gafrc
:
(promote-invisible "enabled")
и все атрибуты будут выноситься. Ключевое слово keep-invisible
служит для
того, чтобы те атрибуты, что были скрытыми в файле символа, оставались
скрытыми и в схеме.
В прошлом в схемах цифровой логики выводы питания скрывались и соединения питания осуществлялись с помощью атрибутов внутри символа. В настоящее время общее мнение на этот счёт изменилось, и такой подход считается плохим (хотя порой всё ещё вспыхивают религиозные войны по этому вопросу).
Для старых логических схем, имеющих повсюду пятивольтовую ТТЛ-логику, наличие скрытых выводов может быть и нормально. Если у вас на плате есть только +5 В, то скрытие выводов питания может несколько упростить схему. Однако сегодня немногие проектировщики делают такие схемы; пятивольтовые ТТЛ (и пятивольтовые КМОП) быстро становятся технологией древности.
Скрывать выводы питания аналоговых микросхем было неприемлемо всегда. Во-первых, аналоговые микросхемы часто имеют несколько соединений питания (VCC, VEE), которые требуется указывать явно. Во-вторых, хорошая практика проектирования подразумевает установку развязывающих конденсаторов на всех выводах питания без исключения. К тому же иногда последовательно с питанием устанавливают катушку индуктивности. Так как всё это должно быть начерчено в схеме, то лучше всего для их подключения использовать явный вывод питания. Поэтому никогда не следует использовать скрытые выводы питания для символов аналоговых компонентов.
В новых схемах логики для разных частей микросхемы часто используется несколько источников питания (OVDD, DVDD и т. д.). Обычным также является наличие нескольких типов логики на одной плате (5 В, 3.3 В и т. д.). Поэтому лучше всего размещать и подключать выводы питания таких символов явным образом. Скрытые выводы питания в этом случае будут причиной многих бед, так как, например, питание 3,3 В можно весьма просто ошибочно подключить к пятивольтовому прибору.
Перефразируя Ненси Рейган: просто скажи “нет” скрытым выводам питания.
К вышесказанному добавим, что тем не менее весьма удобным может быть отделение выводов питания от функциональных частей символа. Чтобы добиться этого, надо будет определить отдельный символ питания и задать ему то же самое позиционное обозначение, что и для функциональной части. При запуске gsch2pcb эти двойняшки будут надлежащим образом рассматриваться как один компонент. Так как ни gschem, ни gsch2pcb не могут точно знать, вполне ли укомплектован компонент в схеме обоими созданными для него символами, то это следует проверять самостоятельно. При таком подходе все цепи питания могут вычерчиваться в одном углу схемы отдельно от сигнальных цепей. Для аналоговых схем это в ряде случаев очень удобно.
Для обоих концов вывода можно задать одинаковые значения координат. При этом будет выводиться только красный маркер вывода без продолжения. В настоящее время в gschem графически такой вывод начертить нельзя. Но файл символа можно открыть в текстовом редакторе и добавить вот такую строку:
P 100 100 100 100 1 0 0
Получится вывод нулевой длины в нижнем левом углу рабочей области. Его можно перемещать, прикреплять к нему атрибуты, копировать его как и любой другой вывод. Если соединение к нему не подключено, он выглядит как маленький красный флаг, в противном случае — пропадает. gnetlist без проблем обрабатывает его как и все прочие выводы.
Есть. Это Руководство по созданию символов.
Помощника, встроенного в графический интерфейс gschem, нет. Но есть скрипты для автоматического создания символов по заданным в файле конфигурации параметрам. Один из этих скриптов — tragesym. Он входит в стандартный набор программ gEDA. Научиться им пользоваться вам поможет краткое руководство.
Один из основных разработчиков проекта написал свой собственный скрипт для создания символов: djboxsym.
Кроме того, существует утилита (ibs2symdef.py), позволяющая создавать файлы описаний символов (symdef) для работы с djboxsym из IBIS-моделей. Она распространяется в рамках проекта PyBIS: PyBIS wiki.
В отличие от многих САПР электроники, разработчики gschem строго придерживаются удобочитаемого текстового формата. Он используется преднамеренно, для облегчения написания скриптов. К тому же он позволяет быстро править файлы в текстовом редакторе. Описание формата файлов gschem находится здесь.
В gschem нет ничего, что определяло бы абсолютный размер объектов.
Единственной связью с реальными единицами измерения являются названия разных
рамок основных надписей. По какой-то давно забытой причине в рамках основных
надписей с названиями title-A4.sym
или title-B.sym
помещаются только
относительно простые схемы из символов стандартной библиотеки.
Если для более сложных схем вам нужно больше места, просто выберите
символ рамки подходящего размера.
gschem масштабирует вывод печати таким образом, что всё содержимое растягивается
на выбранный формат листа. Этот формат абсолютно независим от используемого в
схеме символа рамки основной надписи. Поэтому нет нужды масштабировать сами
символы, чтобы они поместились на конкретном формате.
Многие при печати на A4 предпочитают использовать title-A2.sym
или
title-A3.sym
. Кто-то использует символы основной надписи вообще без
рамок и затем чертит прямоугольник подходящего размера (см., например,
title-block.sym
от Kai-Martin Knaak).
Но в некоторых случаях всё же хочется на самом деле изменить размер символов. Для этого есть несколько способов:
Вариантов настройки gschem гораздо больше, чем может быть здесь
рассмотрено. Поэтому, чтобы узнать, что можно изменить ещё, взгляните на
system-gschemrc
.
${HOME}/myproj
.${HOME}/myproj/symbols
.${HOME}/myproj
создайте файл gafrc
.gafrc
строку: (component-library "./symbols")
cd ${HOME}/myproj gschem myschematic.sch
Главное, что следует помнить:
gafrc
находится в главном каталоге проекта.gafrc
.gafrc
.
В настоящее время (v1.3.1) gschem не спускается в подкаталоги библиотеки символов.
Абсолютно каждый из каталогов своих локальных библиотек нужно отдельно прописывать в
файле gafrc
. Но общую часть полного пути вовсе не обязательно повторять снова и
снова. С помощью функции build-path
путь можно формировать “на лету”:
(define gedasymbols "/путь/к/локальной/библиотеке") (component-library (build-path gedasymbols "analog")) (component-library (build-path gedasymbols "block")) (component-library (build-path gedasymbols "connector"))
К переменной окружения ENV внутри предложений Scheme в
gafrc
можно обратиться с помощью getenv "ENV"
:
; Определение пути доступа к локальному репозиторию символов: (define symbolspath (build-path (getenv "HOME") "geda" "symbols")) ; Подключение с его помощью конкретной библиотеки: (component-library (build-path symbolspath "analog"))
Альтернативный синтаксис — ${ENV}
:
(component-library "${HOME}/geda/symbols/analog")
Добавьте третий аргумент в предложение component-library
в gafrc
, то есть:
(component-library "/home/comp/sch_symbols/AutoGen/Panasonic/0603/1P" "Panasonic 0603 1P")
Да, благодаря тому, что символы могут содержать вложенные символы и соединения.
.sym
) в свою локальную библиотеку.
Добавьте в gafrc
следующие строки, заменив каталоги на свои:
; очистить переменную, содержащую пути к библиотекам, ; и добавить в неё локальные каталоги: (reset-component-library) (component-library "/foo/localgedalib1") (component-library "/bar/foo/localgedalib2")
Придётся добавить каталоги для всех локальных библиотек без исключения, так
как программы gschem и gsch2pcb не распознают подкаталоги
автоматически. Весьма неплохо поместить этот gafrc
в каталог своего
проекта. Таким образом при запуске gschem из какого-то другого каталога
символы стандартной библиотеки всё равно будут появляться. Также это даёт
возможность настройки библиотек специальных символов для особых проектов.
Добавьте в свой gschemrc
(text-size 10)
Вместо “10” подставьте нужный размер.
В файл gschemrc
, находящийся в том месте, где gschem при запуске
ищет свои настройки, добавьте такую строку:
(load (build-path geda-rc-path "gschem-colormap-lightbg"))
Учтите, что этот синтаксис подходит только для новых версий gschem (>=2009). Для более старых версий нужна строка:
(load (build-path geda-rc-path "gschem-lightbg"))
Ещё более старым версиям (до 1.2) нужна такая строка:
(load (string-append gedadatarc "/gschem-lightbg"))
В настоящее время графического интерфейса для интерактивной корректировки цветов в gschem нет. Но их можно поправить в rc-файле.
gschem-colormap-lightbg
или gschem-colormap-darkbg
в $HOME/.gEDA/mycolors
..gEDA/mycolors
.gschemrc
строку:(load (build-path (getenv "HOME") ".gEDA" "mycolors"))
В файле system-gschemrc
вы найдёте следующий раздел:
; log-window string ; ; Controls if the log message window is mapped when gschem is started up ; Possible options: ; startup - opened up when gschem starts ; later - NOT opened up when gschem starts ; (can be opened by Options/Show Log Window) ; (log-window "startup") ;(log-window "later")
Закомментируйте строку startup
(с помощью символа «;») и раскомментируйте
строку later
, или добавьте в свой gschemrc
следующую строку:
(log-window "later")
Если вы хотите, чтобы вместо окна журнала сообщения выводились на стандартный
вывод (stdout), добавьте в свой gschemrc
такую строку:
(logging-destination "tty")
Добавьте в свой gschemrc
строку:
(logging "disabled")
Добавьте следующую строку в свой gschemrc
:
(define default-titleblock "title-A3.sym")
Замените title-A3.sym
именем файла символа предпочитаемой рамки.
Для печати схемы в файл в формате Postscript надо из командной строки вызвать
скрипт print.scm
и задать имена входного и выходного файлов.
Postscript-файл из файла схемы создаётся следующей командой (замените в ней MY_SCH именем файла своей схемы, а GEDA_SCHEME_DIR именем каталога, в котором установлены файлы скриптов на Scheme для gEDA):
gschem -p -oMY_SCH.ps -sGEDA_SCHEME_DIR/print.scm MY_SCH.sch
Приведённый ниже bash
-скрипт, который я назвал gschem-print,
создаст для каждого из заданных в командной строке файлов схем
Postscript-файл, а затем распечатает его на используемом по
умолчанию принтере:
#!/bin/bash # gschem options # -oPS_FILENAME output to Postscript file PS_FILENAME # -sSCRIPT_FILENAME run script SCRIPT_FILENAME # -p autoplace windows for name in $* do base="${name%.*}" gschem -p -o$base.ps -sGEDA_SCHEME_DIR/print.scm $base.sch lpr -P$PRINTER $base.ps done
При печати из командной строки используется размер листа, заданный по
умолчанию. Чтобы по умолчанию задать размер A4, в свой gschemrc
в
$(HOME)/.gEDA
(или в gschemrc
в локальном каталоге) добавьте
строку:
(paper-size 11.69 8.27) ; A4
Полный перечень настроек paper-size
можно найти в
system-gschemrc
.
Отредактируйте файл system-gschemrc
или добавьте в
gschemrc
одну из следующих строк (то есть в ~/.gEDA/gschemrc
или в gschemrc
в том каталоге, из которого вы запускаете gschem).
Для вывода чёрно-белого Postscript:
(output-color "disabled") ; монохромный Postscript (включено по умолчанию)
Для вывода цветного Postscript:
(output-color "enabled") ; цветной Postscript
Для вывода чёрно-белых PNG:
(image-color "disabled") ; монохромные PNG
Для вывода цветных PNG:
(image-color "enabled") ; цветные PNG (включено по умолчанию)
Как разрешить цветной вывод в Postscript/PNG описано выше.
Указанные ниже файлы цветовых схем находятся в каталоге
${prefix}/share/gEDA/
, где ${prefix}
— каталог установки
gEDA.
Начиная с версии 1.5.2, для печати и отображения на экране в gschem
используются разные цветовые схемы.
Для отображения на экране используются gschem-colormap-darkbg
,
gschem-colormap-lightbg
и gschem-colormap-bw
, для печати
— print-colormap-darkbg
и print-colormap-lightbg
.
Чтобы при выводе в Postscript получить светлый фон, в gschemrc
нужно
добавить следующее:
(load (build-path geda-rc-path "print-colormap-lightbg"))
Для получения тёмного фона измените lightbg
на darkbg
.
Если вас не устраивают предустановленные цветовые схемы, можно настроить свою. Для этого:
print-colormap-lightbg
в $HOME/.gEDA/print-colormap-mycolors
..gEDA/print-colormap-mycolors
.gschemrc
строку:(load (build-path (getenv "HOME") ".gEDA" "print-colormap-mycolors"))
Цвет фона, например, задаётся переменной output-background
.
Настройка цветов PNG производится аналогично, только вместо
print-colormap-…
необходимо использовать gschem-colormap-…
.
Обратите внимание, что цвета для экспорта в PNG следует менять в декларации
display-color-map
.
Учтите, что для экспорта в PNG и отображения на экране используются одни и те же цветовые схемы.
В версиях до 1.5.2 для печати и отображения на экране использовались одни и те
же файлы цветовых схем: для тёмного фона — gschem-darkbg
,
для светлого — gschem-ligthbg
.
Для настройки фона Postscript-файлов измените следующую строку или в
файле gschem-darkbg
(чёрный фон, стандартная настройка), или в
gschem-lightbg
(альтернативный светлый фон):
(output-color-background 16 "black" "null" "0 0 0" 0 0 0)
“0 0 0” — это RGB-компоненты (в пределах 0 … 1) для цвета фона PS-вывода.
Для настройки фона при экспорте в PNG измените следующую строку или в gschem-darkbg
(чёрный фон, стандартная настройка), или в gschem-lightbg
(альтернативный
светлый фон):
(background-color 0 "grey94" "null" "1 1 1" 255 255 255)
255 255 255 — это RGB-компоненты цвета фона изображения.
Получить PDF можно разными способами:
-sPAPERSIZE=a4
.Второй вариант более удобен, но требует чуть больше администрирования.
В окружении Gnome для этого понадобится пакет cups-pdf. PDF-принтер, под
названием “CUPS-PDF-Printer”, нужно настроить как “Локальный принтер” (“Local
Printer”) с помощью обычного интерфейса настройки CUPS. Выберите производителя
“Generic”, модель “CUPS-PDF-Printer”. Затем, чтобы команда печати lp
вызывалась для gschem по умолчанию, добавьте в локальный gschemrc
следующую строку:
(print-command "lp -d CUPS-PDF-Printer")
По умолчанию результирующие PDF-файлы будут записываться в каталог
$HOME/PDF
.
В окружении KDE можно использовать программу печати kprinter, задав в ней
вывод в PDF. Тогда в локальный gschemrc
надо добавить такую строку:
(print-command "kprinter")
*.ps
).usepackage{graphicx}
. Вставка схемы в документ осуществляется командой includegraphics
.Простой пример:
\documentclass{article} \usepackage{graphicx} \begin{document} \begin{figure} \includegraphics[width=100mm]{ModulPID.epsi} \end{figure} \end{document}
Сама программа gschem такой функциональности не предоставляет, но есть программа poster, которая как раз это и делает. Её можно загрузить отсюда (GNU) или отсюда (KDE Print).
Эта ошибка возникла в середине 2006 г. у пользователей Fedora Core 5 (и других дистрибутивов Linux, в которых используется glib 2.10.x). Разработчики уже исправили эту ошибку и в последних версиях gEDA/gaf (то есть начиная с октября 2006 г.) такой проблемы быть не должно.
Если оказалось, что у вас более старая версия gEDA/gaf, эту ошибку можно
обойти, установив переменную окружения G_SLICE
в always-malloc.
В частности, до запуска gschem следует сделать следующее:
bash:
export G_SLICE=always-malloc
csh:
setenv G_SLICE always-malloc
Если вы запускаете gschem и получаете окно без панели меню, без цветов, и при нажатии клавиши программа завершается со следующим сообщением:
ERROR: Unbound variable: current-keymap
или появляется ошибка такого вида:
Gtk-CRITICAL : file gtkpixmap.c: line 97 (gtk_pixmap_new): assertion `val != NULL' failed. Gtk-CRITICAL : file gtkpixmap.c: line 97 (gtk_pixmap_new): assertion `val != NULL' failed. Tried to get an invalid color: 0 Tried to get an invalid color: 7 Tried to get an invalid color: 0 Tried to get an invalid color: 7
то gschem не находит какого-то rc-файла. Есть два необходимых rc-файла.
Первый — это system-gschemrc
, второй — system-commonrc
.
system-gschemrc
должен устанавливаться при установке gschem и обычно находится в ${prefix}/share/gEDA/system-gschemrc
. ${prefix}
— это каталог установки gEDA (обычно /usr
, /usr/local
или $HOME/geda
). Этот файл может быть также установлен в /etc/gEDA
(так делается в пакетах .deb
).system-commonrc
должен устанавливаться при установке библиотеки символов gEDA/gaf. Он находится в ${prefix}/share/gEDA/system-commonrc
. Этот файл может устанавливаться также в /etc/gEDA
(так делается в пакетах .deb
). Собственно программа gschem этот файл не загружает. Он загружается строкой (load …)
из rc-файла system-gschemrc
.
Удостоверьтесь, что эти файлы установлены. Файл gschem.log
(создаваемый
при каждом запуске gschem) содержит полезную отладочную информацию,
которая должна помочь вам определить, что идёт не так. Проверьте этот файл на
предмет того, где gschem ищет свои rc-файлы.
Кроме того, в некоторых более старых версиях gEDA/gaf было несколько ошибок,
возникавших при установке rc-файлов в другие места (другие, нежели
${prefix}/share/gEDA
), так что произведите обновление до более свежей
версии.
Убедитесь, что по крайней мере в одном из файлов конфигурации у вас указан действительный путь доступа к библиотеке символов. При запуске gschem проверяет следующие файлы конфигурации (в системе Debian):
gafrc
дистрибутива: /etc/gEDA/system-gafrc
(будет перезаписан при обновлении)gafrc
: /usr/share/gEDA/gafrc.d/gafrc
(для версий gEDA после лета 2009 г.)gafrc
: ~/.gEDA/gafrc
gafrc
: $PWD/gafrc
gschemrc
: /etc/gEDA/system-gschemrc
gschemrc
: ~/.gEDA/gschemrc
gschemrc
: $PWD/gschemrc
Все эти файлы конфигурации могут добавлять или не добавлять пути к списку поиска библиотек. Если конфигурационный файл содержит команду:
(reset-component-library)
пути поиска библиотек будут очищены. Порядок, само собой, важен, так как эта команда удалит все пути, заданные до её вызова.
Если вы зайдёте на удалённую машину, сделав:
$ ssh -X имя_пользователя@удалённая_машина
и после этого получите указанное сообщение от Xlib RENDER, то попробуйте использовать:
$ ssh -Y имя_пользователя@удалённая_машина
Последняя команда разрешает надёжный X11-форвардинг.