kifield


Namekifield JSON
Version 1.0.1 PyPI version JSON
download
home_pagehttps://github.com/devbisme/kifield
SummaryModule and utilities for manipulating part fields in KiCad files.
upload_time2023-08-24 16:22:35
maintainer
docs_urlNone
authorDave Vandenbout
requires_python
licenseMIT
keywords kifield kicad eda
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI
coveralls test coverage No coveralls.
            ===============================
kifield
===============================

.. image:: https://img.shields.io/pypi/v/kifield.svg
        :target: https://pypi.python.org/pypi/kifield


A utility for manipulating part fields in KiCad schematic files or libraries.
KiField can extract all the component fields from a schematic or library
and place them into a spreadsheet for bulk editing, after which you can insert the
edited values from the spreadsheet back into the schematic or library.

KiField is usually employed in a three-step process:

#. First use KiField to extract the part field labels and values from a
   schematic or library and place them into a CSV or XLSX spreadsheet file.

#. Edit the spreadsheet file to change existing field values, add entirely
   new fields, or completely delete fields.

#. Finally, use KiField to insert the updated field labels and values from
   the spreadsheet file into the schematic or library.


* Free software: MIT license
* Documentation: https://devbisme.github.io/KiField.

Features
--------

* Extracts all fields and values from one or more KiCad schematic libraries or files
  (even hierarchical designs), and inserts them into a spreadsheet (either
  CSV or XLSX format).
* Extracts all fields and values from one or more CSV or XLSX spreadsheet files
  and inserts them into one or more KiCad schematics or libraries.




History
-------

1.0.1 (2023-08-23)
______________________

* Bumped to version 1.0.1.
* Made compatible with KiCad 7.


1.0.0 (2022-05-06)
______________________

* Bumped to version 1.0.0.
* Fixed a bug where field visibility is default-visible and/or cannot be set if Reference field does not contain an 'effects' property.
* Fixed some string-splitting and unicode bugs in `find_by_key()` that manifested in Python 2.


0.2.0 (2021-07-28)
______________________

* Added ``--no_range, -nr`` option to disable hyphenated ranges when components are grouped, explicitly showing each component in a group.


0.1.19 (2021-07-27)
______________________

* Bug fix: Add ``sexpdata`` to install requirements.
* Bug fix: Add import of ``reduce`` from ``functools``.
* Bug fix: Correct disappearance of default part fields when extracting from schematic to spreadsheet file.
* Bug fix: Explode collapsed references when importing a spreadsheet file.


0.1.18 (2021-06-28)
______________________

* KiCad 6 schematic and library files are now supported (well, V5.99 actually, but the file formats shouldn't change).


0.1.17 (2021-03-25)
______________________

* Part fields are cleaned up if they contain newlines.
* Lines in a schematic file which were broken by a newline within a quoted string are rejoined.
* Generated spreadsheet cells have their format set to TEXT if they contain a string.


0.1.16 (2020-07-26)
______________________

* Fixed problem with unescaped quote being inserted into schematics/libraries.


0.1.15 (2019-02-17)
______________________

* Fixed problems caused by new 2.6.0 version of openpyxl.


0.1.14 (2019-01-08)
______________________

* Fixed handling of relative sheetpaths in hierarchical schematics.
* Fixed string problems that occur under Anaconda.


0.1.13 (2018-10-28)
______________________

* Now works on files outside the current directory.
* Clearer error explanation when part field extraction fails.
* Simplified installation instructions.


0.1.12 (2018-01-22)
______________________

* Fixed error where output was not produced because KiField was first trying to backup a non-existent output file.


0.1.11 (2018-01-04)
______________________

* Line-feeds and carriage-returns are stripped from strings inserted into .sch or .lib files.
* Fixed error where reading .lib files was ignoring the first line after the EESchema-LIBRARY header and missing a part DEF.


0.1.10 (2018-01-01)
______________________

* File backup now works on all files in a hierarchical schematic.


0.1.9 (2017-12-31)
______________________

* Fixed mishandling of quoted strings containing escaped quotation marks.


0.1.8 (2017-09-23)
______________________

* Catch exception caused by numeric fields that aren't strings interacting with vis/invis option.


0.1.7 (2017-08-14)
______________________

* Added visibility/invisibility option for fields.


0.1.6 (2017-01-30)
______________________

* Added "grouping" option (`--group`) for gathering components with the same field values onto a single line of the XLSX/CSV/TSV file.


0.1.5 (2016-11-29)
______________________

* Added recursive operations on hierarchical schematics so everything can be handled just by processing the top-level file.


0.1.4 (2016-05-29)
______________________

* Added support for TSV files (thanks, kaspar.emanuel@gmail.com).


0.1.3 (2016-05-29)
______________________

* Fixed issue where all the fields from multi-unit components in a schematic were not appearing in the csv file.


0.1.2 (2016-04-13)
______________________

* Fixed issues #3 and #4 regarding incompatibilities with openpyxl 2.4.0a1.


0.1.1 (2016-02-20)
______________________

* Added the ability to extract/insert fields in DCM files.
* Added the ability to explicitly exclude fields from extraction/insertion.


0.1.0 (2016-01-29)
______________________

* First release on PyPI.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/devbisme/kifield",
    "name": "kifield",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "kifield KiCad EDA",
    "author": "Dave Vandenbout",
    "author_email": "devb@xess.com",
    "download_url": "https://files.pythonhosted.org/packages/66/43/73971fe41aa46375bd8f9bc76ddc86ec7128154469ec4312c646a1ab4bd9/kifield-1.0.1.tar.gz",
    "platform": null,
    "description": "===============================\nkifield\n===============================\n\n.. image:: https://img.shields.io/pypi/v/kifield.svg\n        :target: https://pypi.python.org/pypi/kifield\n\n\nA utility for manipulating part fields in KiCad schematic files or libraries.\nKiField can extract all the component fields from a schematic or library\nand place them into a spreadsheet for bulk editing, after which you can insert the\nedited values from the spreadsheet back into the schematic or library.\n\nKiField is usually employed in a three-step process:\n\n#. First use KiField to extract the part field labels and values from a\n   schematic or library and place them into a CSV or XLSX spreadsheet file.\n\n#. Edit the spreadsheet file to change existing field values, add entirely\n   new fields, or completely delete fields.\n\n#. Finally, use KiField to insert the updated field labels and values from\n   the spreadsheet file into the schematic or library.\n\n\n* Free software: MIT license\n* Documentation: https://devbisme.github.io/KiField.\n\nFeatures\n--------\n\n* Extracts all fields and values from one or more KiCad schematic libraries or files\n  (even hierarchical designs), and inserts them into a spreadsheet (either\n  CSV or XLSX format).\n* Extracts all fields and values from one or more CSV or XLSX spreadsheet files\n  and inserts them into one or more KiCad schematics or libraries.\n\n\n\n\nHistory\n-------\n\n1.0.1 (2023-08-23)\n______________________\n\n* Bumped to version 1.0.1.\n* Made compatible with KiCad 7.\n\n\n1.0.0 (2022-05-06)\n______________________\n\n* Bumped to version 1.0.0.\n* Fixed a bug where field visibility is default-visible and/or cannot be set if Reference field does not contain an 'effects' property.\n* Fixed some string-splitting and unicode bugs in `find_by_key()` that manifested in Python 2.\n\n\n0.2.0 (2021-07-28)\n______________________\n\n* Added ``--no_range, -nr`` option to disable hyphenated ranges when components are grouped, explicitly showing each component in a group.\n\n\n0.1.19 (2021-07-27)\n______________________\n\n* Bug fix: Add ``sexpdata`` to install requirements.\n* Bug fix: Add import of ``reduce`` from ``functools``.\n* Bug fix: Correct disappearance of default part fields when extracting from schematic to spreadsheet file.\n* Bug fix: Explode collapsed references when importing a spreadsheet file.\n\n\n0.1.18 (2021-06-28)\n______________________\n\n* KiCad 6 schematic and library files are now supported (well, V5.99 actually, but the file formats shouldn't change).\n\n\n0.1.17 (2021-03-25)\n______________________\n\n* Part fields are cleaned up if they contain newlines.\n* Lines in a schematic file which were broken by a newline within a quoted string are rejoined.\n* Generated spreadsheet cells have their format set to TEXT if they contain a string.\n\n\n0.1.16 (2020-07-26)\n______________________\n\n* Fixed problem with unescaped quote being inserted into schematics/libraries.\n\n\n0.1.15 (2019-02-17)\n______________________\n\n* Fixed problems caused by new 2.6.0 version of openpyxl.\n\n\n0.1.14 (2019-01-08)\n______________________\n\n* Fixed handling of relative sheetpaths in hierarchical schematics.\n* Fixed string problems that occur under Anaconda.\n\n\n0.1.13 (2018-10-28)\n______________________\n\n* Now works on files outside the current directory.\n* Clearer error explanation when part field extraction fails.\n* Simplified installation instructions.\n\n\n0.1.12 (2018-01-22)\n______________________\n\n* Fixed error where output was not produced because KiField was first trying to backup a non-existent output file.\n\n\n0.1.11 (2018-01-04)\n______________________\n\n* Line-feeds and carriage-returns are stripped from strings inserted into .sch or .lib files.\n* Fixed error where reading .lib files was ignoring the first line after the EESchema-LIBRARY header and missing a part DEF.\n\n\n0.1.10 (2018-01-01)\n______________________\n\n* File backup now works on all files in a hierarchical schematic.\n\n\n0.1.9 (2017-12-31)\n______________________\n\n* Fixed mishandling of quoted strings containing escaped quotation marks.\n\n\n0.1.8 (2017-09-23)\n______________________\n\n* Catch exception caused by numeric fields that aren't strings interacting with vis/invis option.\n\n\n0.1.7 (2017-08-14)\n______________________\n\n* Added visibility/invisibility option for fields.\n\n\n0.1.6 (2017-01-30)\n______________________\n\n* Added \"grouping\" option (`--group`) for gathering components with the same field values onto a single line of the XLSX/CSV/TSV file.\n\n\n0.1.5 (2016-11-29)\n______________________\n\n* Added recursive operations on hierarchical schematics so everything can be handled just by processing the top-level file.\n\n\n0.1.4 (2016-05-29)\n______________________\n\n* Added support for TSV files (thanks, kaspar.emanuel@gmail.com).\n\n\n0.1.3 (2016-05-29)\n______________________\n\n* Fixed issue where all the fields from multi-unit components in a schematic were not appearing in the csv file.\n\n\n0.1.2 (2016-04-13)\n______________________\n\n* Fixed issues #3 and #4 regarding incompatibilities with openpyxl 2.4.0a1.\n\n\n0.1.1 (2016-02-20)\n______________________\n\n* Added the ability to extract/insert fields in DCM files.\n* Added the ability to explicitly exclude fields from extraction/insertion.\n\n\n0.1.0 (2016-01-29)\n______________________\n\n* First release on PyPI.\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Module and utilities for manipulating part fields in KiCad files.",
    "version": "1.0.1",
    "project_urls": {
        "Changelog": "https://github.com/devbisme/kifield/blob/master/HISTORY.rst",
        "Documentation": "https://devbisme.github.io/KiField",
        "Homepage": "https://github.com/devbisme/kifield",
        "Source": "https://github.com/devbisme/kifield",
        "Tracker": "https://github.com/devbisme/kifield/issues"
    },
    "split_keywords": [
        "kifield",
        "kicad",
        "eda"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "664373971fe41aa46375bd8f9bc76ddc86ec7128154469ec4312c646a1ab4bd9",
                "md5": "56d5bf271d2674ed22aa0fa3544a5dda",
                "sha256": "8042b37bc29d597d8f0760355c07022466bd849bb6b0a1cb56108bac769c2d59"
            },
            "downloads": -1,
            "filename": "kifield-1.0.1.tar.gz",
            "has_sig": false,
            "md5_digest": "56d5bf271d2674ed22aa0fa3544a5dda",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 2448861,
            "upload_time": "2023-08-24T16:22:35",
            "upload_time_iso_8601": "2023-08-24T16:22:35.513897Z",
            "url": "https://files.pythonhosted.org/packages/66/43/73971fe41aa46375bd8f9bc76ddc86ec7128154469ec4312c646a1ab4bd9/kifield-1.0.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-08-24 16:22:35",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "devbisme",
    "github_project": "kifield",
    "travis_ci": true,
    "coveralls": false,
    "github_actions": false,
    "tox": true,
    "lcname": "kifield"
}
        
Elapsed time: 0.10328s