summaryrefslogtreecommitdiff
path: root/eeschema/dialogs/dialog_bom_help.html
diff options
context:
space:
mode:
authorsaurabhb172020-02-26 16:00:53 +0530
committerGitHub2020-02-26 16:00:53 +0530
commit886d9cb772e81d2e5262284bc3082664f084337f (patch)
tree6acee185a4dc19113fcbf0f9a3d6941085dedaf7 /eeschema/dialogs/dialog_bom_help.html
parent0db48f6533517ecebfd9f0693f89deca28408b76 (diff)
parentaa35045840b78d3f48212db45da59a2e5c69b223 (diff)
downloadKiCad-eSim-886d9cb772e81d2e5262284bc3082664f084337f.tar.gz
KiCad-eSim-886d9cb772e81d2e5262284bc3082664f084337f.tar.bz2
KiCad-eSim-886d9cb772e81d2e5262284bc3082664f084337f.zip
Merge pull request #1 from saurabhb17/develop
Added main functions
Diffstat (limited to 'eeschema/dialogs/dialog_bom_help.html')
-rw-r--r--eeschema/dialogs/dialog_bom_help.html282
1 files changed, 282 insertions, 0 deletions
diff --git a/eeschema/dialogs/dialog_bom_help.html b/eeschema/dialogs/dialog_bom_help.html
new file mode 100644
index 0000000..a254d88
--- /dev/null
+++ b/eeschema/dialogs/dialog_bom_help.html
@@ -0,0 +1,282 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+<head>
+ <meta http-equiv="content-type" content="text/html; charset=windows-1252"/>
+ <title>kicad help</title>
+ <meta name="generator" content="LibreOffice 4.3.5.2 (Windows)"/>
+ <meta name="created" content="00:00:00"/>
+ <meta name="changed" content="2015-05-27T11:29:49.733000000"/>
+ <meta name="created" content="00:00:00">
+ <meta name="changed" content="2015-05-27T10:36:10.287000000">
+ <meta name="created" content="00:00:00">
+ <meta name="changed" content="2015-05-27T09:45:48.809000000">
+ <meta name="created" content="00:00:00">
+ <meta name="changed" content="2015-05-27T09:29:26.026000000">
+ <meta name="created" content="00:00:00">
+ <meta name="changed" content="2014-12-03T20:04:24.723000000">
+ <meta name="created" content="00:00:00">
+ <meta name="changed" content="2014-12-03T20:04:06.003000000">
+ <meta name="created" content="00:00:00">
+ <meta name="changed" content="2014-12-03T19:59:24.882000000">
+ <style type="text/css">
+ @page { margin: 2cm }
+ p { margin-bottom: 0.21cm; color: #000000; widows: 0; orphans: 0; page-break-before: auto; page-break-after: auto }
+ p.western { font-family: "Arial", sans-serif; font-size: 10pt; so-language: en-US }
+ h1 { color: #000000 }
+ h1.western { font-family: "Times New Roman", serif }
+ h2 { color: #000000 }
+ h2.western { font-family: "Times New Roman", serif; font-size: 20pt }
+ h2.cjk { font-family: "SimSun"; font-size: 14pt }
+ h2.ctl { font-family: "Mangal"; font-size: 14pt }
+ h3 { background: transparent; color: #000000 }
+ h3.western { font-family: "Times New Roman", serif; font-size: 16pt; font-style: italic }
+ h3.cjk { font-family: "SimSun" }
+ h3.ctl { font-family: "Mangal" }
+ a:link { color: #004586; text-decoration: none }
+ a.western:link { font-family: "Liberation Sans", sans-serif; so-language: zxx; font-style: italic }
+ a.sdfootnotesym-western { font-family: "DejaVu Serif", serif }
+ </style>
+</head>
+<body lang="en-AU" text="#000000" link="#004586" dir="ltr">
+<h1 class="western"><a name="__RefHeading__2925_482973253"></a>1 -
+Full documentation:</h1>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0">
+<font face="Times New Roman, serif"><font size="3" style="font-size: 12pt"><span style="font-weight: normal">The
+</span><i><b>Eeschema documentation</b></i> <span style="font-weight: normal">describes
+this </span><b>intermediate netlist and gives examples<br></b><span style="font-weight: normal">See
+also </span><i><b>https://answers.launchpad.net/kicad/+faq/2265</b></i></font></font></p>
+<h1 class="western"><i>2 - </i>The intermediate Netlist File</h1>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0; page-break-before: auto; page-break-after: auto">
+<font face="Times New Roman, serif"><font size="3" style="font-size: 12pt">BOM
+files (and netlist files) can be created from an Intermediate netlist
+file created by Eeschema.</font></font></p>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0; page-break-before: auto; page-break-after: auto">
+<font face="Times New Roman, serif"><font size="3" style="font-size: 12pt">This
+file uses XML syntax and is called the intermediate netlist. The
+intermediate netlist includes a large amount of data about your board
+and because of this, it can be used with post-processing to create a
+BOM or other reports.</font></font></p>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0; page-break-before: auto; page-break-after: auto">
+<font face="Times New Roman, serif"><font size="3" style="font-size: 12pt">Depending
+on the output (BOM or netlist), different subsets of the complete
+Intermediate Netlist file will be used in the post-processing.</font></font></p>
+<h1 class="western">3 - Conversion to a new format</h1>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0; page-break-before: auto; page-break-after: auto">
+<font face="Times New Roman, serif"><font size="3" style="font-size: 12pt">By
+applying a post-processing filter to the Intermediate netlist file
+you can generate foreign netlist files as well as BOM files. Because
+this conversion is a text to text transformation.</font></font></p>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0; page-break-before: auto; page-break-after: auto">
+<font face="Times New Roman, serif"><font size="3" style="font-size: 12pt">this
+post-processing filter can be written using <b>Python</b>, <b>XSLT</b>,
+or any other tool capable of taking XML as input.</font></font></p>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0; page-break-before: auto; page-break-after: auto">
+<font face="Times New Roman, serif"><font size="3" style="font-size: 12pt"><span style="font-variant: normal"><span style="font-style: normal"><span style="font-weight: normal">XSLT
+itself is a XML language very suitable for XML transformations. There
+is a free program called </span></span></span><i><span style="font-weight: normal">xsltproc</span></i><span style="font-variant: normal">
+</span><span style="font-variant: normal"><span style="font-style: normal"><span style="font-weight: normal">that
+you can download and install. The</span></span></span><span style="font-variant: normal">
+</span><span style="font-variant: normal"><span style="font-style: normal"><span style="font-weight: normal">xsltproc
+program can be used to read the Intermediate XML netlist input file,
+apply</span></span></span><span style="font-variant: normal"> </span><span style="font-variant: normal"><span style="font-style: normal"><span style="font-weight: normal">a
+style-sheet to transform the input, and save the results in an output
+file. Use of xsltproc requires a style-sheet file using XSLT
+conventions. The full conversion process is handled</span></span></span><span style="font-variant: normal">
+</span><span style="font-variant: normal"><span style="font-style: normal"><span style="font-weight: normal">by
+Eeschema, after it is configured once to run xsltproc in a specific
+way.</span></span></span></font></font></p>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; font-variant: normal; font-style: normal; font-weight: normal; widows: 0; orphans: 0">
+<font face="Times New Roman, serif"><font size="3" style="font-size: 12pt">A
+Python script is somewhat more easy to create.</font></font></p>
+<h1 class="western">4 - Initialization of the dialog window</h1>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0; page-break-before: auto; page-break-after: auto">
+<font face="Times New Roman, serif"><font size="3" style="font-size: 12pt">You
+should add a new pluging (a script) in plugin list by clicking on the
+Add Plugin button.</font></font></p>
+<h2 class="western">4.1 - Plugin Configuration Parameters</h2>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0; page-break-before: auto; page-break-after: auto">
+<font face="Times New Roman, serif"><font size="3" style="font-size: 12pt">The
+Eeschema plug-in configuration dialog requires the following
+information:</font></font></p>
+<ul>
+ <li/>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0; page-break-before: auto; page-break-after: auto">
+ <font face="Times New Roman, serif"><font size="3" style="font-size: 12pt">The
+ title: for instance, the name of the netlist format.</font></font></p>
+ <li/>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0; page-break-before: auto; page-break-after: auto">
+ <font face="Times New Roman, serif"><font size="3" style="font-size: 12pt">The
+ command line to launch the converter (usually a script).</font></font></p>
+</ul>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0; page-break-before: auto; page-break-after: auto">
+<font face="Times New Roman, serif"><font size="3" style="font-size: 12pt">Once
+you click on the generate button the following will happen:</font></font></p>
+<ol>
+ <li/>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0; page-break-before: auto; page-break-after: auto">
+ <font face="Times New Roman, serif"><font size="3" style="font-size: 12pt">Eeschema
+ creates an intermediate netlist file *.xml, for instance <i>test.xml.</i></font></font></p>
+ <li/>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0; page-break-before: auto; page-break-after: auto">
+ <font face="Times New Roman, serif"><font size="3" style="font-size: 12pt">Eeschema
+ runs the script from the command line to create the final output
+ file.</font></font></p>
+</ol>
+<h2 class="western">4.2 - Generate netlist files with the command
+line</h2>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0; page-break-before: auto; page-break-after: auto">
+<font face="Times New Roman, serif"><font size="3" style="font-size: 12pt">Assuming
+we are using the program <i>xsltproc.exe</i><span style="font-variant: normal">
+</span><span style="font-variant: normal"><span style="font-style: normal">to
+apply the sheet style to the intermediate file, </span></span><i>xsltproc.exe</i><span style="font-variant: normal">
+</span><span style="font-variant: normal"><span style="font-style: normal">is
+executed with the following command.</span></span></font></font></p>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0; page-break-before: auto; page-break-after: auto">
+<font face="Times New Roman, serif"><font size="3" style="font-size: 12pt">xsltproc.exe
+-o &lt; output filename &gt; &lt; style-sheet filename &gt; &lt;
+input XML file to convert &gt;</font></font></p>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0; page-break-before: auto; page-break-after: auto">
+<font face="Times New Roman, serif"><font size="3" style="font-size: 12pt">On
+Windows the command line is the following.<br><i>f:/kicad/bin/xsltproc.exe
+-o &ldquo;%O&rdquo; f:/kicad/bin/plugins/myconverter.xsl &ldquo;%I&rdquo;</i></font></font></p>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0; page-break-before: auto; page-break-after: auto">
+<font face="Times New Roman, serif"><font size="3" style="font-size: 12pt">On
+Linux the command becomes as following.<br><i>xsltproc -o &ldquo;%O&rdquo;
+/usr/local/kicad/bin/plugins/myconverter .xsl &ldquo;%I&rdquo;<br>w</i><span style="font-variant: normal"><span style="font-style: normal"><span style="font-weight: normal">here
+</span></span></span><span style="font-variant: normal"><i><span style="font-weight: normal">myconverter</span></i></span><i><span style="font-weight: normal">.xsl</span></i><span style="font-variant: normal">
+</span><span style="font-variant: normal"><span style="font-style: normal"><span style="font-weight: normal">is
+the style-sheet that you are applying.</span></span></span></font></font></p>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0">
+<font face="Times New Roman, serif"><font size="3" style="font-size: 12pt"><span style="font-variant: normal"><span style="font-style: normal"><span style="font-weight: normal">Do
+not forget the double quotes</span></span></span><span style="font-variant: normal">
+</span><span style="font-variant: normal"><span style="font-style: normal"><span style="font-weight: normal">around
+the file names, this allows them to have spaces after the
+substitution by Eeschema.</span></span></span></font></font></p>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; font-variant: normal; font-style: normal; font-weight: normal; widows: 0; orphans: 0">
+<font face="Times New Roman, serif"><font size="3" style="font-size: 12pt">If
+a Python script is used, the command line is something like
+(depending on the Python script):</font></font></p>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0; page-break-before: auto; page-break-after: auto">
+<font face="Times New Roman, serif"><font size="3" style="font-size: 12pt"><i>python</i>
+<i>f:/kicad/bin/plugins/bom-in-python/myconverter.py</i>
+&ldquo;<i>%I&rdquo;&ldquo;%O&rdquo;<br>or<br>python</i>
+<i>/usr/local/kicad/bin/plugins/bom-in-python/myconverter .xsl &ldquo;%I&rdquo;
+&ldquo;%O&rdquo; </i></font></font>
+</p>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0; page-break-before: auto; page-break-after: auto">
+<font face="Times New Roman, serif"><font size="3" style="font-size: 12pt">The
+command line format accepts parameters for filenames:</font></font></p>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0; page-break-before: auto; page-break-after: auto">
+<font face="Times New Roman, serif"><font size="3" style="font-size: 12pt">The
+supported formatting parameters are.</font></font></p>
+<ul>
+ <li/>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0; page-break-before: auto; page-break-after: auto">
+ <font face="Times New Roman, serif"><font size="3" style="font-size: 12pt"><b>%B</b>
+ =&gt; base filename of selected output file, minus path and extension.</font></font></p>
+ <li/>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0">
+ <font face="Times New Roman, serif"><font size="3" style="font-size: 12pt"><b>%P</b>
+ =&gt; project directory, without name and without trailing '/'.</font></font></p>
+ <li/>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0; page-break-before: auto; page-break-after: auto">
+ <font face="Times New Roman, serif"><font size="3" style="font-size: 12pt"><b>%I
+ </b>=&gt; complete filename and path of the temporary input file
+ (the intermediate net file).</font></font></p>
+ <li/>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0; page-break-before: auto; page-break-after: auto">
+ <font face="Times New Roman, serif"><font size="3" style="font-size: 12pt"><b>%O</b>
+ =&gt; complete filename and path (but without extension) of the user
+ chosen output file.</font></font></p>
+</ul>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0; page-break-before: auto; page-break-after: auto">
+<font face="Times New Roman, serif"><font size="3" style="font-size: 12pt"><b>%I</b>
+will be replaced by the actual intermediate file name<span style="font-variant: normal"><span style="font-style: normal"><span style="font-weight: normal">(usually
+the full root sheet filename with extension &ldquo;.xml&rdquo;)</span></span></span><br><span style="font-variant: normal"><span style="font-style: normal"><b>%O</b></span></span><span style="font-variant: normal">
+</span><span style="font-variant: normal"><span style="font-style: normal"><span style="font-weight: normal">will
+be replaced by the actual output file name (the full root sheet
+filename minus extension).<br></span></span></span><span style="font-variant: normal"><span style="font-style: normal"><b>%B</b></span></span><span style="font-variant: normal">
+</span><span style="font-variant: normal"><span style="font-style: normal"><span style="font-weight: normal">will
+be replaced by the actual output short file name</span></span></span><span style="font-variant: normal">
+</span><span style="font-variant: normal"><span style="font-style: normal"><span style="font-weight: normal">(the
+short root sheet filename minus extension).<br></span></span></span><span style="font-variant: normal"><span style="font-style: normal"><b>%P</b></span></span><span style="font-variant: normal">
+</span><span style="font-variant: normal"><span style="font-style: normal"><span style="font-weight: normal">will
+be replaced by the actual current project path.</span></span></span></font></font></p>
+<h2 class="western">4.3 - Command line format:</h2>
+<h3 class="western">4.3.1 - Remark:</h3>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0">
+<font face="Times New Roman, serif"><font size="3" style="font-size: 12pt">Most
+of time, the created file must have an extension, depending on its
+type.<br>Therefore you have to add to the option <i><b>%O</b></i> the
+right file extension.</font></font></p>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0">
+<font face="Times New Roman, serif"><font size="3" style="font-size: 12pt">For
+instance:</font></font></p>
+<ul>
+ <li/>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0">
+ <font face="Times New Roman, serif"><font size="3" style="font-size: 12pt"><i><b>%O.csv</b></i>
+ to create a .csv file (comma separated value file).</font></font></p>
+ <li/>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0">
+ <font face="Times New Roman, serif"><font size="3" style="font-size: 12pt"><i><b>%O.html</b></i>
+ to create a .html file.</font></font></p>
+ <li/>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0">
+ <font face="Times New Roman, serif"><font size="3" style="font-size: 12pt"><i><b>%O.bom</b></i>
+ to create a .bom file.</font></font></p>
+</ul>
+<h3 class="western">4.3.2 Example for<i> </i><span style="font-variant: normal"><i>xsltproc:</i></span></h3>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0; page-break-before: auto; page-break-after: auto">
+<font face="Times New Roman, serif"><font size="3" style="font-size: 12pt"><span style="font-variant: normal"><span style="font-style: normal">The
+command line format for xsltproc is the following:<br>&lt; path of
+</span></span>xsltproc &gt; <span style="font-variant: normal"><span style="font-style: normal">xsltproc
+&lt; </span></span>xsltproc parameters &gt;</font></font></p>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0; page-break-before: auto; page-break-after: auto">
+<font face="Times New Roman, serif"><font size="3" style="font-size: 12pt">On
+Windows:<br><i><b>f:/kicad/bin/xsltproc.exe -o &ldquo;%O.bom</b></i>&rdquo;
+<i><b>f:/kicad/bin/plugins/netlist_form_pads-pcb.xsl &ldquo;%I&rdquo;</b></i></font></font></p>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0; page-break-before: auto; page-break-after: auto">
+<font face="Times New Roman, serif"><font size="3" style="font-size: 12pt">On
+Linux:<br><i><b>xsltproc -o &ldquo;%O.bom</b></i>&rdquo;
+<i><b>/usr/local/kicad/bin/plugins/netlist_form_pads-pcb.xsl &ldquo;%I&rdquo;</b></i></font></font></p>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0; page-break-before: auto; page-break-after: auto">
+<font face="Times New Roman, serif"><font size="3" style="font-size: 12pt"><span style="font-variant: normal"><span style="font-style: normal"><span style="font-weight: normal">The
+above examples assume</span></span></span><span style="font-variant: normal">
+</span><span style="font-variant: normal"><span style="font-style: normal"><span style="font-weight: normal">xsltproc
+is installed on your PC under Windows xsl</span></span></span><span style="font-variant: normal">
+</span><span style="font-variant: normal"><span style="font-style: normal"><span style="font-weight: normal">exe</span></span></span><span style="font-variant: normal">
+</span><span style="font-variant: normal"><span style="font-style: normal"><span style="font-weight: normal">files
+located in kicad/bin</span></span></span><span style="font-variant: normal"><i><b>plugins/</b></i></span><span style="font-variant: normal"><span style="font-style: normal"><span style="font-weight: normal">.</span></span></span></font></font></p>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0">
+<br/>
+
+</p>
+<h3 class="western">4.3.3 <i>Example fo</i><span style="font-variant: normal"><i>r
+python scripts:</i></span></h3>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0; page-break-before: auto; page-break-after: auto">
+<font face="Times New Roman, serif"><font size="3" style="font-size: 12pt">The
+command line format for python is something like:<br><span style="font-variant: normal"><span style="font-style: normal">python</span></span><span style="font-variant: normal">
+</span><span style="font-variant: normal"><span style="font-style: normal">&lt;
+script file name </span></span>&gt; &lt; input filename &gt; &lt;
+output filename &gt;</font></font></p>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0; page-break-before: auto; page-break-after: auto">
+<font face="Times New Roman, serif"><font size="3" style="font-size: 12pt">On
+Windows:<br><i><b>python.exe f:/kicad/bin/plugins
+/bom-in-python/my_python_script.py</b></i> &ldquo;<i><b>%I&rdquo;
+&ldquo;%O.html</b></i>&rdquo;</font></font></p>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0; page-break-before: auto; page-break-after: auto">
+<font face="Times New Roman, serif"><font size="3" style="font-size: 12pt">On
+Linux:<br><i><b>python</b></i> <i><b>/usr/local/kicad/bin/plugins
+/bom-in-python/my_python_script.py</b></i> &ldquo;<i><b>%I&rdquo;
+&ldquo;%O.csv</b></i>&rdquo;</font></font></p>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0; page-break-before: auto; page-break-after: auto">
+<font face="Times New Roman, serif"><font size="3" style="font-size: 12pt">Assuming
+python is installed on your PC, and python scripts are located in
+<i><b>kicad/bin/plugins /bom-in-python/</b></i>.</font></font></p>
+<p lang="en-US" class="western" style="margin-bottom: 0cm; widows: 0; orphans: 0; page-break-before: auto; page-break-after: auto">
+<br/>
+
+</p>
+</body>
+</html>