summaryrefslogtreecommitdiff
path: root/lib/inx/extensions.py
blob: 2b09744088811fc2b4e73d6485c2ee385d0db3ca (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import pyembroidery

from .utils import build_environment, write_inx_file
from .outputs import pyembroidery_output_formats
from ..extensions import extensions, Input, Output


def pyembroidery_debug_formats():
    for format in pyembroidery.supported_formats():
        if 'writer' in format and format['category'] != 'embroidery':
            yield format['extension'], format['description']


def generate_extension_inx_files():
    env = build_environment()

    for extension in extensions:
        if extension is Input or extension is Output:
            continue

        name = extension.name()
        template = env.get_template('%s.inx' % name)
        write_inx_file(name, template.render(formats=pyembroidery_output_formats(),
                                             debug_formats=pyembroidery_debug_formats()))