示例#1
0
def install_theme(theme,
                  monofont='source',
                  monosize=11,
                  nbfont='exosans',
                  nbfontsize=13,
                  tcfont='merriserif',
                  tcfontsize=13,
                  margins='auto',
                  cellwidth='980',
                  lineheight=170,
                  cursorwidth=2,
                  cursorcolor='default',
                  altlayout=False,
                  altprompt=False,
                  hideprompt=False,
                  vimext=False,
                  toolbar=False,
                  nbname=False):
    """ Install theme to jupyter_customcss with specified font, fontsize,
    md layout, and toolbar pref
    """
    from jupyterthemes import stylefx
    stylefx.reset_default(False)
    stylefx.check_directories()

    # initialize style_less & style_css
    style_less = stylefx.set_font_properties(monofont=monofont,
                                             monosize=monosize,
                                             nbfont=nbfont,
                                             nbfontsize=nbfontsize,
                                             tcfont=tcfont,
                                             tcfontsize=tcfontsize)

    # define some vars for cell layout
    cursorcolor = stylefx.get_colors(theme=theme, c=cursorcolor)
    style_less = stylefx.style_layout(style_less,
                                      theme=theme,
                                      cellwidth=cellwidth,
                                      margins=margins,
                                      lineheight=lineheight,
                                      altlayout=altlayout,
                                      altprompt=altprompt,
                                      hideprompt=hideprompt,
                                      cursorwidth=cursorwidth,
                                      cursorcolor=cursorcolor,
                                      vimext=vimext,
                                      toolbar=toolbar,
                                      nbname=nbname)

    # compile tempfile.less to css code and append to style_css
    style_css = stylefx.less_to_css(style_less)

    # append mathjax css & script to style_css
    style_css = stylefx.set_mathjax_style(style_css)

    # install style_css to .jupyter/custom/custom.css
    stylefx.write_final_css(style_css)

    # remove tempfile.less from package_dir
    stylefx.remove_temp_file()
示例#2
0
def main():
    parser = ArgumentParser()
    parser.add_argument('-l', "--list", action='store_true', help="list available themes")
    parser.add_argument('-t', "--theme", action='store', help="theme name to install")
    parser.add_argument('-f',"--monofont", action='store', default='droidmono', help='monospace code font')
    parser.add_argument('-fs', "--monosize", action='store', default='11', help='code font-size')
    parser.add_argument('-nf',"--nbfont", action='store', default='exosans', help='notebook font')
    parser.add_argument('-nfs',"--nbfontsize", action='store', default='13', help='notebook fontsize')
    parser.add_argument('-tf',"--tcfont", action='store', default='georgiaserif', help='txtcell font')
    parser.add_argument('-tfs',"--tcfontsize", action='store', default='13', help='txtcell fontsize')
    parser.add_argument('-cursw', "--cursorwidth", action='store', default=2, help="set cursorwidth (px)")
    parser.add_argument('-cursc', "--cursorcolor", action='store', default='default', help="set cursor color (r, b, g, p)")
    parser.add_argument('-cellw', "--cellwidth", action='store', default=980, help="set cell width (px)")
    parser.add_argument('-lineh',"--lineheight", action='store', default=170, help='code/text line-height (%%)')
    parser.add_argument('-alt', "--altlayout", action='store_true', default=False, help="alt markdown layout")
    parser.add_argument('-vim', "--vimext", action='store_true', default=False, help="toggle styles for vim")
    parser.add_argument('-T', "--toolbar", action='store_true', default=False, help="make toolbar visible")
    parser.add_argument('-N', "--nbname", action='store_true', default=False, help="nb name/logo visible")
    parser.add_argument('-r', "--reset", action='store_true', help="reset to default theme")
    args = parser.parse_args()
    themes = get_themes()
    say_themes = "Available Themes: \n   {}".format('\n   '.join(themes))
    if args.theme:
        if args.theme not in themes:
            print("Didn't recognize theme name: {}".format(args.theme))
            print(say_themes)
            exit(1)
        install_theme(args.theme, monofont=args.monofont, monosize=args.monosize, nbfont=args.nbfont, nbfontsize=args.nbfontsize, tcfont=args.tcfont, tcfontsize=args.tcfontsize, cellwidth=int(args.cellwidth), lineheight=int(args.lineheight), cursorwidth=args.cursorwidth, cursorcolor=args.cursorcolor, altlayout=args.altlayout, vimext=args.vimext, toolbar=args.toolbar, nbname=args.nbname)
    elif args.reset:
        from jupyterthemes import stylefx
        stylefx.reset_default(verbose=True)
    elif args.list:
        print(say_themes)
    else:
        print('No theme provided, no changes made')
示例#3
0
def install_theme(theme, monofont='droidmono', monosize=11, nbfont='exosans', nbfontsize=13, tcfont='georgiaserif', tcfontsize=13, cellwidth=980, lineheight=170, cursorwidth=2, cursorcolor='default', altlayout=False, vimext=False, toolbar=False, nbname=False):
    """ install theme to jupyter_customcss with specified font, fontsize,
    md layout, and toolbar pref
    """
    from jupyterthemes import stylefx
    stylefx.reset_default(False)
    stylefx.check_directories()
    less_compatible = test_less_compatibility(theme)
    if not less_compatible:
        stylefx.install_precompiled_theme(theme)
        return None
    # initialize style_less & style_css
    style_less = stylefx.set_font_properties(monofont=monofont, monosize=monosize, nbfont=nbfont, nbfontsize=nbfontsize, tcfont=tcfont, tcfontsize=tcfontsize)
    # define some vars for cell layout
    cursorcolor = stylefx.get_colors(theme=theme, c=cursorcolor)
    style_less = stylefx.style_layout(style_less, theme=theme, cellwidth=cellwidth, lineheight=lineheight, altlayout=altlayout, cursorwidth=cursorwidth, cursorcolor=cursorcolor, vimext=vimext, toolbar=toolbar, nbname=nbname)
    # compile tempfile.less to css code and append to style_css
    style_css = stylefx.less_to_css(style_less)
    # append mathjax css & script to style_css
    style_css = stylefx.set_mathjax_style(style_css)
    # install style_css to .jupyter/custom/custom.css
    stylefx.write_final_css(style_css)
    # remove tempfile.less from package_dir
    stylefx.remove_temp_files(vimext=vimext)
示例#4
0
def install_theme(theme,
                monofont=None,
                monosize=11,
                nbfont=None,
                nbfontsize=13,
                tcfont=None,
                tcfontsize=13,
                dffontsize=93,
                outfontsize=85,
                margins='auto',
                cellwidth='980',
                lineheight=170,
                cursorwidth=2,
                cursorcolor='default',
                altprompt=False,
                hideprompt=False,
                vimext=False,
                toolbar=False,
                nbname=False,
                dfonts=False):

    """ Install theme to jupyter_customcss with specified font, fontsize,
    md layout, and toolbar pref
    """
    from jupyterthemes import stylefx
    stylefx.reset_default(False)
    stylefx.check_directories()

    doc = '\nConcatenated font imports, .less styles, & custom variables\n'
    s = '*' * 65
    style_less = '\n'.join(['/*', s, s, doc, s, s, '*/'])
    style_less += '\n\n\n'
    style_less += '/* Import Notebook, Markdown, & Code Fonts */\n'

    # initialize style_less & style_css
    style_less = stylefx.set_font_properties(
        style_less=style_less,
        monofont=monofont,
        monosize=monosize,
        nbfont=nbfont,
        nbfontsize=nbfontsize,
        tcfont=tcfont,
        tcfontsize=tcfontsize,
        dffontsize=dffontsize,
        outfontsize=outfontsize,
        dfonts=dfonts)

    # define some vars for cell layout
    cursorcolor = stylefx.get_colors(theme=theme, c=cursorcolor)
    style_less = stylefx.style_layout(
        style_less,
        theme=theme,
        cellwidth=cellwidth,
        margins=margins,
        lineheight=lineheight,
        altprompt=altprompt,
        hideprompt=hideprompt,
        cursorwidth=cursorwidth,
        cursorcolor=cursorcolor,
        vimext=vimext,
        toolbar=toolbar,
        nbname=nbname)

    # compile tempfile.less to css code and append to style_css
    style_css = stylefx.less_to_css(style_less)

    # append mathjax css & script to style_css
    style_css = stylefx.set_mathjax_style(style_css)

    # install style_css to .jupyter/custom/custom.css
    stylefx.write_final_css(style_css)

    # remove tempfile.less from package_dir
    stylefx.remove_temp_file()
示例#5
0
def main():
    parser = ArgumentParser()
    parser.add_argument(
        '-l', "--list", action='store_true', help="list available themes")
    parser.add_argument(
        '-t', "--theme", action='store', help="theme name to install")
    parser.add_argument(
        '-f',
        "--monofont",
        action='store',
        default=None,
        help='monospace code font')
    parser.add_argument(
        '-fs',
        "--monosize",
        action='store',
        default='11',
        help='code font-size')
    parser.add_argument(
        '-nf',
        "--nbfont",
        action='store',
        default=None,
        help='notebook font')
    parser.add_argument(
        '-nfs',
        "--nbfontsize",
        action='store',
        default='13',
        help='notebook fontsize')
    parser.add_argument(
        '-tf',
        "--tcfont",
        action='store',
        default=None,
        help='txtcell font')
    parser.add_argument(
        '-tfs',
        "--tcfontsize",
        action='store',
        default='13',
        help='txtcell fontsize')
    parser.add_argument(
        '-dfs',
        "--dffontsize",
        action='store',
        default='93',
        help='pandas dataframe fontsize')
    parser.add_argument(
        '-ofs',
        "--outfontsize",
        action='store',
        default='85',
        help='output area fontsize')
    parser.add_argument(
        '-m',
        "--margins",
        action='store',
        default='auto',
        help="fix margins of main intro page")
    parser.add_argument(
        '-cursw',
        "--cursorwidth",
        action='store',
        default=2,
        help="set cursorwidth (px)")
    parser.add_argument(
        '-cursc',
        "--cursorcolor",
        action='store',
        default='default',
        help="cursor color (r, b, g, p)")
    parser.add_argument(
        '-cellw',
        "--cellwidth",
        action='store',
        default='980',
        help="set cell width (px)")
    parser.add_argument(
        '-lineh',
        "--lineheight",
        action='store',
        default=170,
        help='code/text line-height (%%)')
    parser.add_argument(
        '-altp',
        "--altprompt",
        action='store_true',
        default=False,
        help="alt input prompt style")
    parser.add_argument(
        '-P',
        "--hideprompt",
        action='store_true',
        default=False,
        help="hide cell input prompt")
    parser.add_argument(
        '-T',
        "--toolbar",
        action='store_true',
        default=False,
        help="make toolbar visible")
    parser.add_argument(
        '-N',
        "--nbname",
        action='store_true',
        default=False,
        help="nb name/logo visible")
    parser.add_argument(
        '-vim',
        "--vimext",
        action='store_true',
        default=False,
        help="toggle styles for vim")
    parser.add_argument(
        '-r',
        "--reset",
        action='store_true',
        help="reset to default theme")
    parser.add_argument(
        '-dfonts',
        "--defaultfonts",
        action='store_true',
        default=False,
        help="force fonts to browser default")

    args = parser.parse_args()
    themes = get_themes()
    themes.sort()
    say_themes = "Available Themes: \n   {}".format('\n   '.join(themes))
    if args.theme:
        if args.theme not in themes:
            print("Didn't recognize theme name: {}".format(args.theme))
            print(say_themes)
            exit(1)
        install_theme(
            args.theme,
            monofont=args.monofont,
            monosize=args.monosize,
            nbfont=args.nbfont,
            nbfontsize=args.nbfontsize,
            tcfont=args.tcfont,
            tcfontsize=args.tcfontsize,
            dffontsize=args.dffontsize,
            outfontsize=args.outfontsize,
            cellwidth=args.cellwidth,
            margins=args.margins,
            lineheight=int(args.lineheight),
            cursorwidth=args.cursorwidth,
            cursorcolor=args.cursorcolor,
            altprompt=args.altprompt,
            hideprompt=args.hideprompt,
            vimext=args.vimext,
            toolbar=args.toolbar,
            nbname=args.nbname,
            dfonts=args.defaultfonts)
    elif args.reset:
        from jupyterthemes import stylefx
        stylefx.reset_default(verbose=True)
    elif args.list:
        print(say_themes)
    else:
        print('No theme provided, no changes made')
示例#6
0
def main():
    parser = ArgumentParser()
    parser.add_argument(
        '-l', "--list", action='store_true', help="list available themes")
    parser.add_argument(
        '-t', "--theme", action='store', help="theme name to install")
    parser.add_argument(
        '-f',
        "--monofont",
        action='store',
        default='droidmono',
        help='monospace code font')
    parser.add_argument(
        '-fs',
        "--monosize",
        action='store',
        default='11',
        help='code font-size')
    parser.add_argument(
        '-nf',
        "--nbfont",
        action='store',
        default='exosans',
        help='notebook font')
    parser.add_argument(
        '-nfs',
        "--nbfontsize",
        action='store',
        default='13',
        help='notebook fontsize')
    parser.add_argument(
        '-tf',
        "--tcfont",
        action='store',
        default='loraserif',
        help='txtcell font')
    parser.add_argument(
        '-tfs',
        "--tcfontsize",
        action='store',
        default='13',
        help='txtcell fontsize')
    parser.add_argument(
        '-m',
        "--margins",
        action='store',
        default='auto',
        help="fix margins of main intro page")
    parser.add_argument(
        '-cursw',
        "--cursorwidth",
        action='store',
        default=2,
        help="set cursorwidth (px)")
    parser.add_argument(
        '-cursc',
        "--cursorcolor",
        action='store',
        default='default',
        help="cursor color (r, b, g, p)")
    parser.add_argument(
        '-cellw',
        "--cellwidth",
        action='store',
        default='980',
        help="set cell width (px)")
    parser.add_argument(
        '-lineh',
        "--lineheight",
        action='store',
        default=170,
        help='code/text line-height (%%)')
    parser.add_argument(
        '-alt',
        "--altlayout",
        action='store_true',
        default=False,
        help="alt markdown layout")
    parser.add_argument(
        '-altp',
        "--altprompt",
        action='store_true',
        default=False,
        help="alt input prompt style")
    parser.add_argument(
        '-P',
        "--hideprompt",
        action='store_true',
        default=False,
        help="hide cell input prompt")
    parser.add_argument(
        '-T',
        "--toolbar",
        action='store_true',
        default=False,
        help="make toolbar visible")
    parser.add_argument(
        '-N',
        "--nbname",
        action='store_true',
        default=False,
        help="nb name/logo visible")
    parser.add_argument(
        '-vim',
        "--vimext",
        action='store_true',
        default=False,
        help="toggle styles for vim")
    parser.add_argument(
        '-r', "--reset", action='store_true', help="reset to default theme")
    args = parser.parse_args()

    themes = get_themes()
    say_themes = "Available Themes: \n   {}".format('\n   '.join(themes))

    if args.theme:
        if args.theme not in themes:
            print("Didn't recognize theme name: {}".format(args.theme))
            print(say_themes)
            exit(1)
        install_theme(
            args.theme,
            monofont=args.monofont,
            monosize=args.monosize,
            nbfont=args.nbfont,
            nbfontsize=args.nbfontsize,
            tcfont=args.tcfont,
            tcfontsize=args.tcfontsize,
            cellwidth=args.cellwidth,
            margins=args.margins,
            lineheight=int(args.lineheight),
            cursorwidth=args.cursorwidth,
            cursorcolor=args.cursorcolor,
            altlayout=args.altlayout,
            altprompt=args.altprompt,
            hideprompt=args.hideprompt,
            vimext=args.vimext,
            toolbar=args.toolbar,
            nbname=args.nbname)
    elif args.reset:
        from jupyterthemes import stylefx
        stylefx.reset_default(verbose=True)
    elif args.list:
        print(say_themes)
    else:
        print('No theme provided, no changes made')
示例#7
0
def install_theme(theme,
                  monofont='droidmono',
                  monosize=11,
                  nbfont='exosans',
                  nbfontsize=13,
                  tcfont='loraserif',
                  tcfontsize=13,
                  margins='auto',
                  cellwidth='980',
                  lineheight=170,
                  cursorwidth=2,
                  cursorcolor='default',
                  altlayout=False,
                  altprompt=False,
                  hideprompt=False,
                  vimext=False,
                  toolbar=False,
                  nbname=False):
    """ Install theme to jupyter_customcss with specified font, fontsize,
    md layout, and toolbar pref
    """
    from jupyterthemes import stylefx
    stylefx.reset_default(False)
    stylefx.check_directories()

    # initialize style_less & style_css
    style_less = stylefx.set_font_properties(
        monofont=monofont,
        monosize=monosize,
        nbfont=nbfont,
        nbfontsize=nbfontsize,
        tcfont=tcfont,
        tcfontsize=tcfontsize)

    # define some vars for cell layout
    cursorcolor = stylefx.get_colors(theme=theme, c=cursorcolor)
    style_less = stylefx.style_layout(
        style_less,
        theme=theme,
        cellwidth=cellwidth,
        margins=margins,
        lineheight=lineheight,
        altlayout=altlayout,
        altprompt=altprompt,
        hideprompt=hideprompt,
        cursorwidth=cursorwidth,
        cursorcolor=cursorcolor,
        vimext=vimext,
        toolbar=toolbar,
        nbname=nbname)

    # compile tempfile.less to css code and append to style_css
    style_css = stylefx.less_to_css(style_less)

    # append mathjax css & script to style_css
    style_css = stylefx.set_mathjax_style(style_css)

    # install style_css to .jupyter/custom/custom.css
    stylefx.write_final_css(style_css)

    # remove tempfile.less from package_dir
    stylefx.remove_temp_file()
示例#8
0
def install_theme(theme,
                monofont=None,
                monosize=11,
                nbfont=None,
                nbfontsize=13,
                tcfont=None,
                tcfontsize=13,
                dffontsize=93,
                outfontsize=85,
                margins='auto',
                cellwidth='980',
                lineheight=170,
                cursorwidth=2,
                cursorcolor='default',
                altprompt=False,
                hideprompt=False,
                vimext=False,
                toolbar=False,
                nbname=False,
                dfonts=False):

    """ Install theme to jupyter_customcss with specified font, fontsize,
    md layout, and toolbar pref
    """
    from jupyterthemes import stylefx
    stylefx.reset_default(False)
    stylefx.check_directories()

    doc = '\nConcatenated font imports, .less styles, & custom variables\n'
    s = '*' * 65
    style_less = '\n'.join(['/*', s, s, doc, s, s, '*/'])
    style_less += '\n\n\n'
    style_less += '/* Import Notebook, Markdown, & Code Fonts */\n'

    # initialize style_less & style_css
    style_less = stylefx.set_font_properties(
        style_less=style_less,
        monofont=monofont,
        monosize=monosize,
        nbfont=nbfont,
        nbfontsize=nbfontsize,
        tcfont=tcfont,
        tcfontsize=tcfontsize,
        dffontsize=dffontsize,
        outfontsize=outfontsize,
        dfonts=dfonts)

    # define some vars for cell layout
    cursorcolor = stylefx.get_colors(theme=theme, c=cursorcolor)
    style_less = stylefx.style_layout(
        style_less,
        theme=theme,
        cellwidth=cellwidth,
        margins=margins,
        lineheight=lineheight,
        altprompt=altprompt,
        hideprompt=hideprompt,
        cursorwidth=cursorwidth,
        cursorcolor=cursorcolor,
        vimext=vimext,
        toolbar=toolbar,
        nbname=nbname)

    # compile tempfile.less to css code and append to style_css
    style_css = stylefx.less_to_css(style_less)

    # append mathjax css & script to style_css
    style_css = stylefx.set_mathjax_style(style_css)

    # install style_css to .jupyter/custom/custom.css
    stylefx.write_final_css(style_css)

    # remove tempfile.less from package_dir
    stylefx.remove_temp_file()