[Dependencies] Added support to *_sch_print

This commit is contained in:
Salvador E. Tropea 2022-06-30 11:16:53 -03:00
parent 200b54aaf7
commit 33b2367a54
3 changed files with 11 additions and 6 deletions

View File

@ -7,10 +7,11 @@ import os
from tempfile import mkdtemp
from shutil import rmtree, copy2
from .gs import GS
from .kiplot import check_eeschema_do, exec_with_retry, add_extra_options
from .kiplot import add_extra_options, exec_with_retry
from .misc import CMD_EESCHEMA_DO, kiauto_dependency
from .out_base import VariantOptions
from .kicad.config import KiConf
from .dep_downloader import check_tool, pytool_downloader
from .registrable import RegDependency
from .macros import macros, document, output_class # noqa: F401
from . import log
@ -19,7 +20,9 @@ logger = log.get_logger()
def register_deps(pre):
RegDependency.register(kiauto_dependency(pre+'_sch_print'))
dep = kiauto_dependency(pre+'_sch_print', (1, 5, 4), CMD_EESCHEMA_DO, pytool_downloader)
RegDependency.register(dep)
return dep
def copy_project(sch_dir):
@ -55,7 +58,7 @@ class Any_SCH_PrintOptions(VariantOptions):
def run(self, name):
super().run(name)
output_dir = os.path.dirname(name)
check_eeschema_do()
command = check_tool(self._dependency, fatal=True)
if self._comps:
# Save it to a temporal dir
sch_dir = mkdtemp(prefix='tmp-kibot-'+self._expand_ext+'_sch_print-')
@ -65,7 +68,7 @@ class Any_SCH_PrintOptions(VariantOptions):
else:
sch_dir = None
sch_file = GS.sch_file
cmd = [CMD_EESCHEMA_DO, 'export', '--all_pages', '--file_format', self._expand_ext]
cmd = [command, 'export', '--all_pages', '--file_format', self._expand_ext]
if self.monochrome:
cmd.append('--monochrome')
if not self.frame:

View File

@ -10,7 +10,7 @@ from .macros import macros, document, output_class # noqa: F401
from . import log
logger = log.get_logger()
register_deps('pdf')
dep = register_deps('pdf')
class PDF_SCH_PrintOptions(Any_SCH_PrintOptions):
@ -21,6 +21,7 @@ class PDF_SCH_PrintOptions(Any_SCH_PrintOptions):
super().__init__()
self._expand_ext = 'pdf'
self._exit_error = PDF_SCH_PRINT
self._dependency = dep
@output_class

View File

@ -11,7 +11,7 @@ from .macros import macros, document, output_class # noqa: F401
from . import log
logger = log.get_logger()
register_deps('svg')
dep = register_deps('svg')
class SVG_SCH_PrintOptions(Any_SCH_PrintOptions):
@ -22,6 +22,7 @@ class SVG_SCH_PrintOptions(Any_SCH_PrintOptions):
super().__init__()
self._expand_ext = 'svg'
self._exit_error = SVG_SCH_PRINT
self._dependency = dep
@output_class