Igor2
simplest approach I can think of: 
have an user configurable search list of directories, and insert the File's path in front of it after load 
(File being the file the user wanted to open) 
that way any relative reference embedded in the File is always relative to wherever the File was on the filesystem when you loaded it 
so if you copied the File together with the stuff it referenced to, keeping whatever dir structure that worked on one system, will automatically work on the other 
plus, because of the search path list, you can keep the /lib approach for the system installed central xschem libs 
plus as an user I can build my own, non-project, user-level, shared library somewhere and put it on the search path list too 
(almost every gschem user I've ever met does this) 
so if File references to /home/foo/bar, that's an absolute path starting with / meaning you wouldn't apply any search path, just open the path as is 
if it doesn't start with /, e.g. it is ../foo/bar, you'd just take each item from the search path list, in order, and glue the reference path at the end of the search path item and try that 
e.g. if you search path list is /home/foo (the File's path you inserted on load), /home/user/libs (the lib the user configured) and /usr/share/xschem/lib (the system installed lib) 
stefan_xschem
ok got it 
Igor2
then you'd try to open /home/foo/../foo/bar, if that fail go on and try /home/user/libs/../foo/bar, etc 
I think this would be very flexible yet pertty much compatible with the current setup 
(but I don't insist doing it this way, it's just an idea) 


tEDAx v1
begin netlist v1 linear_stab
	conn gnd U1 2
	conn gnd CONN1 1
	conn gnd CONN2 1
	conn in U1 1
	conn in CONN1 2
	conn out U1 3
	conn out CONN2 2
	conn gnd C1 1
	conn in C1 2
	conn gnd C2 1
	conn out C2 2
	nettag in max_current 0.5A
	nettag out max_current 1A
	footprint CONN1 SIP2
	footprint CONN2 SIP2
	footprint U1 TO220
	footprint C1 1206
	footprint C2 1206
	value C1 100 nf
	value C2 100 nf
	device C1 ceramic\ capacitor
	device C2 ceramic\ capacitor
	device U1 7805
	comptag U1 heatsink yes
end netlist


tEDAx v1
begin netlist v1 NANDs
	device U5 74LS00
	footprint U5 dip(14)
	conn gnd U5 7
	conn vcc U5 14
	conn gnd U5 1
	conn gnd U5 2
	conn gnd U5 4
	conn gnd U5 5
	conn gnd U5 9
	conn gnd U5 10
	conn gnd U5 12
	conn gnd U5 13

	pinname U5 7 ground
	pinname U5 14 power
	pinname U5 1 A
	pinname U5 2 B
	pinname U5 3 Y
	pinname U5 4 A
	pinname U5 5 B
	pinname U5 6 Y
	pinname U5 9 A
	pinname U5 10 B
	pinname U5 8 Y
	pinname U5 12 A
	pinname U5 13 B
	pinname U5 11 Y

	pinslot U5 1 1
	pinslot U5 2 1
	pinslot U5 3 1
	pinidx U5 1 1
	pinidx U5 2 2
	pinidx U5 3 3
	pinslot U5 4 2
	pinslot U5 5 2
	pinslot U5 6 2
	pinidx U5 4 1
	pinidx U5 5 2
	pinidx U5 6 3
	pinslot U5 9 3
	pinslot U5 10 3
	pinslot U5 8 3
	pinidx U5 9 1
	pinidx U5 10 2
	pinidx U5 8 3
	pinslot U5 12 4
	pinslot U5 13 4
	pinslot U5 11 4
	pinidx U5 12 1
	pinidx U5 13 2
	pinidx U5 11 3
end netlist

