← Back to team overview

kicad-developers team mailing list archive

Re: Github plugin.

 

On 10/04/2013 06:59 AM, Wayne Stambaugh wrote:
> On 10/4/2013 3:24 AM, Dick Hollenbeck wrote:
>> On 10/01/2013 08:47 AM, Carl Poirier wrote:
>>> Hey I forgot to tell you yesterday that while moving the libs to GitHub, I had to rename
>>> the "smd_crystal&oscillator" one since GitHub doesn't allow the '&' character to be used.
>>> I called it "smd_crystal_and_oscillator", and thus it will fail with any fp-lib-table
>>> based on the one I sent earlier, which was tailored to the converted local files.
>>>
>>>
>>
>>
>> Quick poll:
>>
>> What do folks think of *footprints* named like this?
>>
>>
>>    SOT23_Transistor_BC846_Handsoldering_RevA_03Aug2010
>>
>>
>> Attached is a revised fp-lib-table for GITHUB.  The nicknames are shorter, no revisions or
>> dates in them.
>>
>>
>> BTW, I much prefer something like this:
>>
>>
>> SOT23_Transistor_BC846_Handsoldering_RevA_03Aug2010_while_I_was_wearing_my_blue_shirt_after_lunch_where_we_ate_pizza
>>
>>
> 
> I alluded to this in my footprint library table call for help.  It is
> impossible to fit some of the footprint library names and the footprint
> names on a 1920X1200 display in CvPcb.  This not very usable when I can
> only view a fraction of the name without scrolling.  You have my vote
> for the shorter naming convention.  Why not put the extra information in
> a comment now that pretty footprints handle comments?
> 
> Wayne
> 

BTW, in revision 4362 I added the ability to right mouse popup "Paste" a (fp_lib_table)
s-expression text element into the DIALOG_FP_LIB_TABLE:

bzr log text:

"DIALOG_FP_LIB_TABLE does not use wxSplitterWindow, it would not obey.
Paste popup menu in this dialog now allows pasting a (fp_lib_table)
s-expression element holding (lib) elements.  This provides an
opportunity for GITHUB library publishers to put the table description
into their README.md file as a (fp_lib_table) element where it can
be quickly copied to clipboard and pasted into the fp lib table dialog.
This is a paste operation, and overwrites from the initial cursor position."


Then couple that with the ability to "index" or "catalog" footprints per pretty library in
the github README.md syntax:

  http://stackoverflow.com/questions/8655937/github-readme-and-readme-md

And you have the basis of a webpage on github that would let you quickly read about each
footprint in detail from the index (README.md).  And paste into your table editor quickly
the row you need to use it immediately.

While preparing the pretty library for publishing to any github repo, no doubt the
REAME.md text preparation could be automated (with a script?).  The result is a one page
summary of all footprints in the library in one place where it can be searched in a
webbrowser.  Where the webbrowser is used to "Copy" the (fp_lib_table) entry onto the
clipboard for pasting into the kicad DIALOG_FP_LIB_TABLE.

Pretty footprints can be sent through the mail, they should be able to come across the
clipboard, they should be copyable onto the clipboard from a webpage, they should be
expected from numerous external generators not part of KiCad, they should be pasteable
from clipboard into the module editor at least.

We have sort of reserved, in the pretty format, the top comment area for external
generators to use (coffeescript, python, etc.).  So we should not infringe on that comment
area without discussion with a number of footprint generating folks.

Short term our best options are to encourage preparation of a publishing guideline.  That
document would talk about what constitutes a good library, and how to prepare the
README.me file, and maybe even offer a wxPython script to prepare it automatically.
The REAME.me file should have the (fp_lib_table) near the top, which is the s-expression
text to add that library rapidly to the kicad table dialog using copy and paste,
webbrowser to KiCad.  For such (fp_lib_table) s-expression to be immediately be useful, it
should use environment variables.  The paste operation should be all that is needed to
make the footprint library *immediately* useable.

If you don't want to read about me wearing a blue shirt or eating pizza in the footprint
name, then probably that won't change until we have a true

  *footprint leadership person*
.

Leadership primarily entails setting baseline minimum expectations.  (It does not extend
to exclusion of bad libraries because anyone can always publish their own bad library
anywhere on GITHUB.)  Competition may breed success, or it may breed needles in haystacks.


Dick




Follow ups

References