EDIF (Electronic Design Interchange Format) is used to exchange design information between different CAD systems. Although EDIF is currently at version "4 0 0", Electric reads and writes version "2 0 0".

For more information on reading and writing EDIF, see Section 3-9-2 and Section 3-9-3, respectively. EDIF options are controlled with the "EDIF" preferences (in menu File / Preferences..., "I/O" section, "EDIF" tab).

This dialog controls whether EDIF output writes schematic or netlist views (the default is netlist). It also lets you set a scale factor for EDIF input. The "Cadence compatibility" check requests that multidimensional and symbolic busses be converted to simpler, all-numeric busses.

The bottom section of the panel lets you specify a configuration file that will control EDIF I/O. This file has conversions between coordinates and names inside of Electric and the EDIF file. The file has these lines of text that control different aspects of conversion:

- Primitives A line starting with "P" controls how primitives are converted to EDIF. The line has this format:
  P ElecTech ElecPrim ElecFunc ElecRot ElecPortOff EDIFTech EDIRPrim EDIFFunc EDIFPortOff
  Where:
  - ElecTech is the Electric technology name (e.g. "schematic").
  - ElecPrim is the Electric primitive name (e.g. "Transistor").
  - ElecFunc is the Electric function (e.g. "CONPOWER").
  - ElecRot is the Electric rotation (e.g. "90").
  - ElecPortOff is the Electric port offsets, enclosed in braces (e.g. "{ g(-1,0) }"). Each port on the primitive must be listed, and an offset given. To ignore a port, use "NA" instead of "port(x,y)". You can also specify an ignored port as "NA(x,y)" if you want to affect how an attached wire's endpoint is modified. "NA" by itself is the same as "NA(0,0)". If the port's name is "NA", use "\NA(x,y)" to specify the name as NA, and not be ignored.
  - EDIFTech is the EDIF technology name (e.g. "tsmc18").
  - EDIRPrim is the EDIF primitive name (e.g. "pmos2v").
  - EDIFFunc is the EDIF function (e.g. "symbol").
  - EDIFPortOff is the EDIF port offsets, enclosed in braces (e.g. "{ G(0,0) }"). Each port on the primitive must be listed, and an offset given.
  For example:
  P schematic Ground CONGROUND 0 { gnd(0,2) } basic gnd symbol { gnd!(0,0) }

- Exports A line starting with "E" controls how exports are converted to EDIF. The line has this format:
  E ElecTech ElecPrim ElecFunc ElecRot ElecPortOff EDIFTech EDIRPrim EDIFFunc EDIFPortOff
  Where:
  - ElecTech is the Electric technology name (e.g. "schematic").
  - ElecPrim is the Electric primitive name (e.g. "Transistor").
  - ElecFunc is the Electric function (e.g. "CONNECT").
  - ElecRot is the Electric rotation (e.g. "90").
  - ElecPortOff is the Electric port offsets, enclosed in braces (e.g. "{ g(-1,0) }"). Each port on the primitive must be listed, and an offset given.
  - EDIFTech is the EDIF technology name (e.g. "tsmc18").
  - EDIRPrim is the EDIF primitive name (e.g. "pmos2v").
  - EDIFFunc is the EDIF function (e.g. "symbol").
  - EDIFPortOff is the EDIF port offsets, enclosed in braces (e.g. "{ G(0,0) }"). Each port on the primitive must be listed, and an offset given.
  For example:
  E schematic Off-Page CONNECT 0 input { a(-2,0), y(2,0) } basic ipin symbol { NA, NA }

- Variables A line starting with "V" controls how variables are converted to EDIF. The line has this format:
  V ElecVarName EDIFVarName Scale [Append]
  Where:
  - ElecVarName is the Electric variable name (e.g. "ATTR_M").
  - EDIFVarName is the EDIF primitive name (e.g. "m").
  - Scale is a scale from Electric to EDIF (e.g. "1").
  - Append is an optional string to append to EDIF (e.g. "u").
  For example:
  V ATTR_length l 0.9 u

- FigureGroups A line starting with "F" controls how figure groups are converted to EDIF. The line has this format:
  F ElecName EDIFName
  Where:
  - ElecName is the Electric technology name (e.g. "ARTWORK").
  - EDIFName is the EDIF figure group name (e.g. "DEVICE").
  For example:
  F ARTWORK DEVICE

- Globals A line starting with "G" controls how global names are converted to EDIF. The line has this format:
  G ElecName EDIFName
  Where:
  - ElecName is the Electric global name (e.g. "GND").
  - EDIFName is the EDIF global name (e.g. "gnd!").
  For example:
  G GND gnd!