Пример #1
0
def targettask(pyfontaine, pipedata, task):
    try:
        library = Library(collections=['subsets'])
        director = Director(_library=library)

        sourcedir = op.join(pyfontaine.builddir)
        directory = UpstreamDirectory(sourcedir)

        fonts = []
        for font in directory.ALL_FONTS:
            if font.startswith('sources'):
                continue
            fonts.append(op.join(pyfontaine.builddir, font))

        _ = ('fontaine --collections subsets --text %s'
             ' > fontaine.txt\n') % ' '.join(fonts)
        pyfontaine.bakery.logging_cmd(_)

        fontaine_log = op.join(pyfontaine.builddir, 'fontaine.txt')
        fp = codecs.open(fontaine_log, 'w', 'utf-8')

        result = Builder.text_(director.construct_tree(fonts))
        fp.write(result.output)
        pyfontaine.bakery.logging_raw('end of pyfontaine process\n')
        pyfontaine.bakery.logging_task_done(task)
    except Exception as ex:
        pyfontaine.bakery.logging_raw('pyfontaine error: {}'.format(ex))
        pyfontaine.bakery.logging_raw('pyfontaine process has been failed\n')
        pyfontaine.bakery.logging_task_done(task, failed=True)
Пример #2
0
def targettask(pyfontaine, pipedata, task):
    try:
        library = Library(collections=['subsets'])
        director = Director(_library=library)

        sourcedir = op.join(pyfontaine.builddir)
        directory = UpstreamDirectory(sourcedir)

        fonts = []
        for font in directory.ALL_FONTS:
            if font.startswith('sources'):
                continue
            fonts.append(op.join(pyfontaine.builddir, font))

        _ = ('fontaine --collections subsets --text %s'
             ' > fontaine.txt\n') % ' '.join(fonts)
        pyfontaine.bakery.logging_cmd(_)

        fontaine_log = op.join(pyfontaine.builddir, 'fontaine.txt')
        fp = codecs.open(fontaine_log, 'w', 'utf-8')

        result = Builder.text_(director.construct_tree(fonts))
        fp.write(result.output)
        pyfontaine.bakery.logging_raw('end of pyfontaine process\n')
    except Exception as ex:
        pyfontaine.bakery.logging_raw('pyfontaine error: {}'.format(ex))
        pyfontaine.bakery.logging_raw('pyfontaine process has been failed\n')
Пример #3
0
    def execute(self, pipedata, prefix=""):
        self.stdout_pipe.write('pyFontaine TTFs\n', prefix='### %s ' % prefix)

        library = Library(collections=['subsets'])
        director = Director(_library=library)

        fonts = []
        for font in pipedata['bin_files']:
            fonts.append(op.join(self.builddir, font))

        _ = ('fontaine --collections subsets --text %s'
             ' > sources/fontaine.txt\n') % ' '.join(fonts)
        self.stdout_pipe.write(_, prefix='$ ')
        try:
            fontaine_log = op.join(self.builddir, 'sources', 'fontaine.txt')
            fp = codecs.open(fontaine_log, 'w', 'utf-8')
        except OSError:
            self.stdout_pipe.write("Failed to open fontaine log to write")
            return

        try:
            result = Builder.text_(director.construct_tree(fonts))
            fp.write(result.output)
        except:
            self.stdout_pipe.write(('PyFontaine raised exception.'
                                    ' Check latest version.\n'))
            raise
Пример #4
0
    def execute(self, pipedata):
        task = self.bakery.logging_task('pyFontaine TTFs')
        if self.bakery.forcerun:
            return

        try:
            library = Library(collections=['subsets'])
            director = Director(_library=library)

            fonts = []
            for font in pipedata['bin_files']:
                fonts.append(op.join(self.builddir, font))

            _ = ('fontaine --collections subsets --text %s'
                 ' > sources/fontaine.txt\n') % ' '.join(fonts)
            self.bakery.logging_cmd(_)

            fontaine_log = op.join(self.builddir, 'sources', 'fontaine.txt')
            fp = codecs.open(fontaine_log, 'w', 'utf-8')

            result = Builder.text_(director.construct_tree(fonts))
            fp.write(result.output)
            self.bakery.logging_task_done(task)
        except:
            self.bakery.logging_task_done(task, failed=True)
            raise
Пример #5
0
    def execute(self, pipedata):
        task = self.bakery.logging_task('pyFontaine TTFs')
        if self.bakery.forcerun:
            return

        try:
            library = Library(collections=['subsets'])
            director = Director(_library=library)

            fonts = []
            for font in pipedata['bin_files']:
                fonts.append(op.join(self.builddir, font))

            _ = ('fontaine --collections subsets --text %s'
                 ' > sources/fontaine.txt\n') % ' '.join(fonts)
            self.bakery.logging_cmd(_)

            fontaine_log = op.join(self.builddir, 'sources', 'fontaine.txt')
            fp = codecs.open(fontaine_log, 'w', 'utf-8')

            result = Builder.text_(director.construct_tree(fonts))
            fp.write(result.output)
            self.bakery.logging_task_done(task)
        except:
            self.bakery.logging_task_done(task, failed=True)
            raise
Пример #6
0
def main(*argv):
    args = usage()

    fonts = []
    for filename in args.font:
        fonts.append(Font(filename))

    if args.disable_unames:
        os.environ['DISABLE_UNAMES'] = 'disable'

    director = Director()
    if args.xml:
        tree = director.construct_tree(fonts)
        Builder.xml_(tree).display()
    elif args.csv:
        sys.stdout.write(Builder.csv_(fonts))
    elif args.json:
        tree = director.construct_tree(fonts)
        Builder.json_(tree)
    else:
        tree = director.construct_tree(fonts)
        Builder.text_(tree).display()