Moved 3 rc promotion keywords from gschem into libgeda (fix for bug#1748143)
[geda-gaf/peter-b.git] / libgeda / lib / system-gafrc
blob24467b861beee079ae3c699accea59250a68559a
1 ;                                                         -*-Scheme-*-
2 ;;; 
3 ;;; Common init file for gaf
4 ;;;
6 ; The following global variables are defined by libgeda:
8 ; path-sep       -- system path separator
9 ; geda-data-path -- path to gEDA system-wide data directory
10 ; geda-rc-path   -- path to gEDA system-wide config directory
13 ;; The directory containing gaf Scheme code.
14 (define geda-scheme-path (string-append geda-data-path path-sep "scheme"))
15 ; We need to add gaf's scheme library to the Guile load path.
16 (set! %load-path (append (list geda-scheme-path) %load-path))
17 ; This is used in some places for error messages/listing gnetlist
18 ; backends
19 (scheme-directory geda-scheme-path)
21 ; The libgeda Scheme library provides a number of useful functions for
22 ; writing Scheme code for embedding in gaf.
23 (load-from-path "geda.scm")
26 ;; The directory containing various bitmaps (e.g. icons)
27 (bitmap-directory (build-path geda-data-path "bitmap"))
30 ; Load the default component libraries
31 (let ((clib-def-file (%search-load-path "geda-clib")))
32   (if clib-def-file 
33       (load clib-def-file)
34       (display "Failed to load default component libraries.\n")))
36 ; Load the default font
37 (let ((font-def-file (%search-load-path "geda-font")))
38   (if font-def-file 
39       (load font-def-file)
40       (display "Failed to load default font.\n")))
43 ; Set the name of the postscript prolog file that will be 
44 ; pasted into the postscript output after the DSC comments, but
45 ; before the main script.
46 (postscript-prolog (build-path geda-data-path "prolog.ps"))
49 ; Start of attribute promotion keywords
50
52 ; attribute-promotion string
54 ; This keyword controls if attribute promotion occurs when you instanciate a
55 ; component.  Attribute promotion basically means that any floating attribute
56 ; (unattached) which is inside a symbol gets "promoted" or attached to the 
57 ; newly inserted component.  This only occurs when the component is 
58 ; instanciated.
60 (attribute-promotion "enabled")
61 ;(attribute-promotion "disabled")
63 ; promote-invisible string
65 ; If attribute-promotion is enabled, then this controls if invisible floating
66 ; attributes are promoted (attached to the outside of the component) if the 
67 ; text string is invisible.  There are cases where it is undesirable, so the 
68 ; default is disabled.
70 ;(promote-invisible "enabled")
71 (promote-invisible "disabled")
73 ; keep-invisible string
75 ; If both attribute-promotion and promote-invisible are enabled, then this 
76 ; controls if invisible floating attributes are kept around in memory and
77 ; NOT deleted.  Having this enabled will keeps component slotting working.
78 ; If attribute-promotion and promote-invisible are enabled and this
79 ; keyword is disabled, then component slotting will NOT work (and maybe 
80 ; other functions which depend on hidden attributes, since those attributes
81 ; are deleted from memory).
83 ;(keep-invisible "disabled")
84 (keep-invisible "enabled")
86 ; always-promote-attributes
88 ; Set the list of attributes that are always promoted regardless of
89 ; their visibility.
91 (always-promote-attributes "footprint device value model-name")
94 ; End of attribute promotion keywords
95