Example #1
0
def create_generator(source_file_name=None, generator_name=None):
    """ Make a generator from the given information
    about the object, such as its source and type """
    if generator_name:
        return LanguageInfo.find_generator_by_name(generator_name)()
    else:
        if source_file_name:
            try:
                h = LanguageInfo.guess_language_for_file(source_file_name)
                return h.get_default_html_generator()()
            except IOError:
                # this means silvercity tried to the file and failed
                raise ValueError, "Unknown extension for '%s', cannot create lexer" % source_file_name

        else:
            raise ValueError, "Unknown file type, cannot create lexer"
Example #2
0
def generate_html(
        source_file_name=None,  # Use clipboard, hackish way of specifying
        target_file_name=None,
        css='',
        generator=None,
        title='',
        view=0,
        clean=0,
        prefix=xhtml_prefix,
        suffix=suffix):

    if target_file_name is None:
        if view:
            target_file_name = tempfile.mktemp('.html')
            target_file = open(target_file_name, 'w')
        else:
            target_file = sys.stdout
    else:
        target_file = open(target_file_name, 'w')

    if not css:
        css = 'file:' + urllib.pathname2url(
            SilverCity.get_default_stylesheet_location())

    if source_file_name is not None:
        generator = create_generator(source_file_name, generator)
        target_file.write(xhtml_prefix % {
            'title': title or os.path.basename(source_file_name),
            'css': css
        })
        source = open(source_file_name, 'r').read()
    else:
        source = get_clipboard()
        if generator is not None:
            generator = LanguageInfo.find_generator_by_name(generator)()
        else:
            language = guess_language_for_buffer(source)
            generator = language.get_default_html_generator()()

    if clean:
        source = clean_source(source)
    generator.generate_html(target_file, source)
    target_file.write(suffix)

    if view:
        target_file.close()
        webbrowser.open(target_file_name)
def generate_html(
        source_file_name = None, # Use clipboard, hackish way of specifying
        target_file_name = None,
        css = '',
        generator = None,
        title = '',
        view = 0,
        clean = 0,
        prefix = xhtml_prefix,
        suffix = suffix):

    if target_file_name is None:
        if view:
            target_file_name = tempfile.mktemp('.html')
            target_file = open(target_file_name, 'w')
        else:            
            target_file = sys.stdout
    else:
        target_file = open(target_file_name, 'w')

    if not css:
        css = 'file:' + urllib.request.pathname2url(
            SilverCity.get_default_stylesheet_location())
    
    if source_file_name is not None:
        generator = create_generator(source_file_name, generator)
        target_file.write(xhtml_prefix % {
            'title' : title or os.path.basename(source_file_name),
            'css' : css})
        source = open(source_file_name, 'r').read()
    else:
        source = get_clipboard()
        if generator is not None:
            generator = LanguageInfo.find_generator_by_name(generator)()
        else:
            language = guess_language_for_buffer(source)
            generator = language.get_default_html_generator()()
        
    if clean:
        source = clean_source(source)
    generator.generate_html(target_file, source)
    target_file.write(suffix)

    if view:
        target_file.close()
        webbrowser.open(target_file_name)
Example #4
0
def create_generator(source_url, generator_name, content):
    if generator_name:
        return LanguageInfo.find_generator_by_name(generator_name)()
    else:
        return guess_language(source_url,
                              content).get_default_html_generator()()
def create_generator(source_file_name, generator_name):
    if generator_name:
        return LanguageInfo.find_generator_by_name(generator_name)()
    else:
        return LanguageInfo.guess_language_for_file(
                        source_file_name).get_default_html_generator()()
Example #6
0
def create_generator(source_file_name, generator_name):
    if generator_name:
        return LanguageInfo.find_generator_by_name(generator_name)()
    else:
        return LanguageInfo.guess_language_for_file(
            source_file_name).get_default_html_generator()()
def create_generator(source_url, generator_name, content):
    if generator_name:
        return LanguageInfo.find_generator_by_name(generator_name)()
    else:
        return guess_language(source_url, content).get_default_html_generator()()