X-Authentication-Warning: delorie.com: mail set sender to geda-help-bounces using -f X-Recipient: geda-help AT delorie DOT com X-Mailer: exmh version 2.7.2 01/07/2005 (debian 1:2.7.2-18) with nmh-1.3 X-Exmh-Isig-CompType: repl X-Exmh-Isig-Folder: inbox To: geda-help AT delorie DOT com Subject: Re: [geda-help] Adding new gschem symbols? In-reply-to: References: <1349966191 DOT 2412 DOT 33 DOT camel AT AMD64X2 DOT fritz DOT box> Comments: In-reply-to Alan Corey message dated "Thu, 11 Oct 2012 23:33:10 -0400." Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Message-Id: <20121012100446.93D648096B1E@turkos.aspodata.se> Date: Fri, 12 Oct 2012 12:04:46 +0200 (CEST) From: karl AT aspodata DOT se (Karl Hammar) X-Virus-Scanned: ClamAV using ClamSMTP Reply-To: geda-help AT delorie DOT com Errors-To: nobody AT delorie DOT com X-Mailing-List: geda-help AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk Alan Corey: ... [ (component-library "~/.gEDA/symbols") ] ... > But I didn't realize it didn't recurse subdirectories, Use component-library-search as in: $ grep component-library-search ~/.gEDA/gafrc (component-library-search "/Net/cvs/cvs.gedasymbols.org/www/user" "cvs") (component-library-search (build-path (getenv "HOME") "git/openhw/share/gschem") "lcl") Hope that helps. It was added Dec 23 2011 so probably not many know about it (not even me till I searched for a previous version). And the documentation don't seem to been updated with this new feature. At the bottom of: http://wiki.geda-project.org/geda:gschem_ug:config the text describes another (previous) component-library-search that does not do the same thing. Anyone (please) is welcome to file a bug or provide a documentation patch for this. > and that names collide. ... Yes, that is a major pain. Look at http://wiki.geda-project.org/geda:file_format_spec#component It says that it is only the basename (i.e. the file name without any directory parts in it) of a file. For example: C 18600 19900 1 0 0 7400-1.sym So if you have sym files from multiple sources, this situation is unmanaged, and in my opinion this is a deficiency of the file format. In may 2011 when I did the c version of an enhanced component-library-search (the scm version is mainly done by Luigi Salvatore), I found (http://archives.seul.org/geda/user/May-2011/msg00646.html): << There is 71 duplicate and 6 triplicate symbols names in the cvs. One of the triplicate is triac-1.sym, and searching for triac in the browser gives me five alternatives: dj_delorie/symbols/nvsemis triac-1.sym dj_delorie/symbols triac-1.sym levente_kovacs/symbols triac-1.sym werner_hoch/symbols/sf triac-2.sym Basic devices triac-1.sym >> Also: << Using the basename of a file to find it opens up for ambiguity. Consider a schematic containg components a.sym and b.sym, and two libraries with path1/ a.sym b.sym path2/ a.sym b.sym and suppose we want path1/a.sym and path2/b.sym. >> We really do need something more than the basename to resolve which symbol we want. I propose that we add something after the basename to resolve the conflict. E.g. I want diode.sym, which sym file is then choosen? $ locate /diode.sym /Net/cvs/cvs.gedasymbols.org/www/user/kai_martin_knaak/essential/symbols/discrete/diode.sym /Net/cvs/cvs.gedasymbols.org/www/user/kai_martin_knaak/symbols/discrete/diodes/diode.sym /Net/cvs/cvs.gedasymbols.org/www/user/max_christian_pohle/symbols/diode.sym /home/karl/git/openhw/share/gschem/diode.sym One could possibly solve that by stating that an attribute should match: C 18600 19900 1 0 0 diode.sym "author=Karl Hammar" as in: $ grep author diode.sym author=Karl Hammar or that the path to the file should match: C 18600 19900 1 0 0 diode.sym "path contain essential" Any thoughts? Regards, /Karl Hammar ----------------------------------------------------------------------- Aspö Data Lilla Aspö 148 S-742 94 Östhammar Sweden +46 173 140 57