You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

170 lines
1.4 KiB

Make the new schematic and symbol library file formats the default. This is a very large and potentially disruptive change so this will be an unusually long and detailed commit message. The new file formats are now the default in both the schematic and symbol library editors. Existing symbol libraries will be saved in their current format until new features are added to library symbols. Once this happens, both the legacy schematic and symbol file formats will be no longer be savable and existing libraries will have to be converted. Saving to the legacy file formats is still available for round robin testing and should not be used for normal editing. When loading the legacy schematic file, it is imperative that the schematic library symbols are rescued and/or remapped to valid library identifiers. Otherwise, there will be no way to link to the original library symbol and the user will be required manually set the library identifier. The cached symbol will be saved in the schematic file so the last library symbol in the cache will still be used but there will be no way to update it from the original library. The next save after loading a legacy schematic file will be converted to the s-expression file format. Schematics with hierarchical sheets will automatically have all sheet file name extensions changed to .kicad_sym and saved to the new format as well. Appending schematics requires that the schematic to append has already been converted to the new file format. This is required to ensure that library symbols are guaranteed to be valid for the appended schematic. The schematic symbol library symbol link resolution has been moved out of the SCH_COMPONENT object and move into the SCH_SCREEN object that owns the symbol. This was done to ensure that there is a single place where the library symbol links get resolved rather than the dozen or so different code paths that previously existed. It also removes the necessity of the SCH_COMPONENT object of requiring any knowledge of the symbol library table and/or the cache library. When opening an s-expression schematic, the legacy cache library is not loaded so any library symbols not rescued cannot be loaded. Broken library symbol links will have to be manually resolved by adding the cache library to the symbol library table and changing the links in the schematic symbol. Now that the library symbols are embedded in the schematic file, the SCH_SCREEN object maintains the list of library symbols for the schematic automatically. No external manipulation of this library cache should ever occur. ADDED: S-expression schematic and symbol library file formats.
6 years ago
  1. alternate
  2. anchor
  3. angles
  4. arc
  5. at
  6. atomic
  7. background
  8. bezier
  9. bidirectional
  10. bitmap
  11. bold
  12. border
  13. bottom
  14. bus
  15. bus_alias
  16. bus_entry
  17. cells
  18. center
  19. checksum
  20. circle
  21. clock
  22. clock_low
  23. color
  24. cols
  25. column_count
  26. column_widths
  27. comment
  28. company
  29. convert
  30. data
  31. date
  32. default
  33. default_instance
  34. diameter
  35. diamond
  36. directive_label
  37. dnp
  38. do_not_autoplace
  39. dot
  40. edge_clock_high
  41. effects
  42. embedded_fonts
  43. embedded_files
  44. end
  45. extends
  46. external
  47. exclude_from_sim
  48. face
  49. fields_autoplaced
  50. file
  51. fill
  52. font
  53. footprint
  54. free
  55. generator
  56. generator_version
  57. global_label
  58. header
  59. hide
  60. hierarchical_label
  61. hint_alt_swap
  62. hint_pin_swap
  63. host
  64. href
  65. id
  66. image
  67. input
  68. input_low
  69. instances
  70. inverted
  71. inverted_clock
  72. in_bom
  73. iref
  74. italic
  75. junction
  76. justify
  77. kicad_sch
  78. kicad_symbol_lib
  79. label
  80. left
  81. length
  82. lib_id
  83. lib_name
  84. lib_symbols
  85. line
  86. line_spacing
  87. margins
  88. members
  89. mid
  90. mirror
  91. name
  92. netclass_flag
  93. no
  94. no_connect
  95. non_logic
  96. none
  97. number
  98. offset
  99. on_board
  100. open_collector
  101. open_emitter
  102. outline
  103. output_low
  104. unconnected
  105. output
  106. page
  107. paper
  108. passive
  109. path
  110. pin
  111. pin_del
  112. pin_names
  113. pin_numbers
  114. pin_merge
  115. pin_rename
  116. polyline
  117. portrait
  118. power
  119. power_in
  120. power_out
  121. private
  122. project
  123. property
  124. property_del
  125. pts
  126. radius
  127. rectangle
  128. reference
  129. required
  130. rev
  131. right
  132. round
  133. rows
  134. row_heights
  135. rule_area
  136. scale
  137. separators
  138. shape
  139. sheet
  140. sheet_instances
  141. show_name
  142. size
  143. span
  144. start
  145. stroke
  146. symbol
  147. symbol_instances
  148. table
  149. table_cell
  150. text
  151. text_box
  152. thickness
  153. title
  154. title_block
  155. top
  156. tri_state
  157. type
  158. unit
  159. unit_name
  160. unspecified
  161. uuid
  162. value
  163. version
  164. width
  165. wire
  166. xy
  167. x
  168. y
  169. yes