Hello Kevin,

> I'm relatively new to XCircuit, and I just can't figure out how to add
> objects to a new library page.
>
> From Tutorial 2, I know how to use SHIFT-V to create virtual library
> instances into the User Library. Unfortunately, I can't even restore
> my user library after a restart, because I don't know how to save it.

> I can use File -> New Library Page to create a library. Unfortunately,
> I couldn't figure out how to add anything to this library page. I tried
> to 'M' an existing object from a different library page to my library.
> That does something weird. I've also tried to use the File -> Library
> Manager, setting my "Target Library Page" to the new page I created,
> and "Load Selected" objects from an existing source library. After
> loading, the objects still do not appear in my new library page.
>
> I've also tried saving the object I want, closing XCircuit, and then
> File -> Read XCircuit File. I loaded my saved file, and set target
> library to my new library. It still does not show up in my library
> page!
>
> I've read this but am still confused:
>
> http://opencircuitdesign.com/xcircuit/features.html#Libraries
>
> Library page, yes, that's what I want to 1) create, 2) save, and 3)
> load. But I don't know how to add anything to a library, or save it.
> I know that after I save it, I need to load the library back in a
> .xcircuitrc.
>
> Technology: I do want the new objects that I create to be in a separate
> technology. Unfortunately, I don't know how to create a new object, or
> name it, for that matter. Pressing 'e' or 'E' in existing library pages
> does not let me rename anything.
>
> So, I'm pretty lost and would like some help.

Make sure you understand the difference between a library page and a
technology.  They were originally the same thing in xcircuit, which makes
it a bit more confusing.

All objects are considered individually.  If they have the same prefix,
which is in the form of a Tcl namespace with a double colon ("::") between
the prefix and the object name, then the namespace prefix is called the
"technology", and all objects belonging to the same technology are
considered grouped together.  If you do "Save Technology" from the File
menu, then all objects with then you can select from among all the
technology prefixes and save all those objects as a ".lps" library file.

The default technology namespace has an empty prefix, or just "::" (this
is also a Tcl thing).  If you create an object with the "M" key, and
just give it a plain name, then it gets grouped in this default "(user)"
technology.

But as I said, every object is considered individually, and there is
nothing that distinguishes one technology from another apart from that
name prefix.  So if you want to put a number of objects into their own
technology, then you can just rename the prefixes of the ones you want.
That's what the "e" key is for.  But for the "e" key to work, you need to
have the pointer on top of the name of the object.  Then when it is
being edited, you will see both the technology prefix, the "::" namespace
separator, and the object name.

Menu item "Options->Show Technology Namespaces" will make this clearer by
not hiding the technology prefixes in the library objects.  When you do
that, you'll see that there can be multiple technologies represented in
one library page.  The pages are grouped by function, not necessarily by
technology.

The "File->New Library Page" just creates a new library page for displaying
objects of any technology.  Generally, what you would do is "New Library
Page" followed by going to that library page and then doing "File->
Load Technology", so all the objects in that technology library file will
show up on that library page.

If I missed explaining anything, please let me know!

                                        Regards,
                                        Tim

+--------------------------------+-------------------------------------+
| R. Timothy Edwards (Tim)       | email: t...@opencircuitdesign.com    |
| Open Circuit Design            | web:   http://opencircuitdesign.com |
| 19601 Jerusalem Road           | phone: (240) 489-3255               |
| Poolesville, MD 20837          | cell:  (408) 828-8212               |
+--------------------------------+-------------------------------------+

_______________________________________________
Xcircuit-dev mailing list
Xcircuit-dev@opencircuitdesign.com
http://www.opencircuitdesign.com/mailman/listinfo/xcircuit-dev

Reply via email to