← Back to team overview

kicad-developers team mailing list archive

Re: Project templates (related to the modal dialog thread)


On Tue, May 15, 2012 at 12:17 AM, Brian Sidebotham <
brian.sidebotham@xxxxxxxxx> wrote:

> Hi Guys,
> I was recently thinking it would be cool to implement a templating
> system for KiCad projects. This means including more than just a
> project file as the basis of a new project.
> Particularly for people doing Arduino projects and the like, it would
> be very handy to be able to select a template when starting a new
> project as a kickstart. The template would be able to consist of any
> file type, so could include various schematic files, and a board file.
> To make it universal, I think it would be good to include several
> templates with the KiCad install, but also have a search path (or
> environmental variable pointing to a path) for user templates.
> I see a template as a simple directory of files. It need not be any
> more complicated than that. It would be easy to implement, and if the
> default project (which now only consists of a project file) were to
> also include a schematic and board file, then any issue of a modal nag
> box would be eradicated anyway.
> It should be a simple directory wildcard copy and rename. All we would
> need to do is define a template structure which could consist of a
> simple text file to provide a description of the template, perhaps
> possibly with a few images. These description and image files would
> not need to be copied to the new project directory so there would need
> to be a defined structure and/or naming convention for the template
> files.
> Does this sound like a valid proposal? I'd like to add this to the
> project, so if it feels like a good direction to move in, we can
> hammer out the details for a templating system.
> Best Regards,
> Brian.

To me it sounds like a "create project (from template)" wizard, that could
be created using the new scripting interface.
I would not suggest implementing using scripts instead of file-copies.
You could also do stuff like :
Create new project -> select/define board size (eg euro card/arduino
board/your standard) -> select /define mounting holes -> select/define
default width/spacing of tracks (technology)
And an option like : take these parameters from existing project...
Just a thought,

Follow ups