KiRi

Generates an interactive web page to browse the schematic and/or PCB differences between git commits. Must be applied to a git repository.
Recursive git submodules aren’t supported (submodules inside submodules).
Note that most browsers won’t allow Java Script to read local files, needed to load the SCH/PCB. So you must use a web server or enable the access to local files. In the case of Google Chrome you can use the –allow-file-access-from-files command line option.
This output generates a simple Python web server called kiri-server that you can use.
For more information visit the KiRi web

Type: kiri

Categories: PCB/docs, Schematic/docs

Parameters:

  • comment : [string=’’] A comment for documentation purposes. It helps to identify the output.

  • dir : [string=’./’] Output directory for the generated files. If it starts with + the rest is concatenated to the default dir.

  • layers : [list(dict)|list(string)|string] [all,selected,copper,technical,user,inners,outers] List of PCB layers to use. When empty all available layers are used. Note that if you want to support adding/removing layers you should specify a list here.

    • Valid keys:

      • description : [string=’’] A description for the layer, for documentation purposes. A default can be specified using the layer_defaults global option.

      • layer : [string=’’] Name of the layer. As you see it in KiCad.

      • suffix : [string=’’] Suffix used in file names related to this layer. Derived from the name if not specified. A default can be specified using the layer_defaults global option.

  • name : [string=’’] Used to identify this particular output definition. Avoid using _ as first character. These names are reserved for KiBot.

  • options : [dict] Options for the diff output.

    • Valid keys:

      • color_theme : [string=’_builtin_classic’] Selects the color theme. Only applies to KiCad 6. To use the KiCad 6 default colors select _builtin_default. Usually user colors are stored as user, but you can give it another name.

      • keep_generated : [boolean=false] Avoid PCB and SCH images regeneration. Useful for incremental usage.

      • background_color : [string=’#FFFFFF’] Color used for the background of the diff canvas.

      • dnf_filter : [string|list(string)=’_none’] Name of the filter to mark components as not fitted. A short-cut to use for simple cases where a variant is an overkill.

      • max_commits : [number=0] Maximum number of commits to include. Use 0 for all available commits.

      • pre_transform : [string|list(string)=’_none’] Name of the filter to transform fields before applying other filters. A short-cut to use for simple cases where a variant is an overkill.

      • revision : [string=’HEAD’] Starting point for the commits, can be a branch, a hash, etc. Note that this can be a revision-range, consult the gitrevisions manual for more information.

      • variant : [string=’’] Board variant to apply.

      • zones : [string=’global’] [global,fill,unfill,none] How to handle PCB zones. The default is global and means that we fill zones if the check_zone_fills preflight is enabled. The fill option always forces a refill, unfill forces a zone removal and none lets the zones unchanged. Be careful with the keep_generated option when changing this setting.

  • type : ‘kiri’

  • category : [string|list(string)=’’] The category for this output. If not specified an internally defined category is used. Categories looks like file system paths, i.e. PCB/fabrication/gerber. The categories are currently used for navigate_results.

  • disable_run_by_default : [string|boolean] Use it to disable the run_by_default status of other output. Useful when this output extends another and you don’t want to generate the original. Use the boolean true value to disable the output you are extending.

  • extends : [string=’’] Copy the options section from the indicated output. Used to inherit options from another output of the same type.

  • groups : [string|list(string)=’’] One or more groups to add this output. In order to catch typos we recommend to add outputs only to existing groups. You can create an empty group if needed.

  • output_id : [string=’’] Text to use for the %I expansion content. To differentiate variations of this output.

  • priority : [number=50] [0,100] Priority for this output. High priority outputs are created first. Internally we use 10 for low priority, 90 for high priority and 50 for most outputs.

  • run_by_default : [boolean=true] When enabled this output will be created when no specific outputs are requested.