mirror of
https://github.com/jimeh/pylight.git
synced 2026-02-19 09:56:43 +00:00
updated a few things
This commit is contained in:
36
app.py
36
app.py
@@ -1,9 +1,19 @@
|
||||
import os
|
||||
from flask import Flask
|
||||
from flask import make_response
|
||||
from flask import request
|
||||
|
||||
# import flask
|
||||
from flask import Flask, make_response, request
|
||||
|
||||
# import pygments
|
||||
from pygments import highlight
|
||||
from pygments.lexers import (get_lexer_by_name, get_lexer_for_filename,
|
||||
get_lexer_for_mimetype, guess_lexer_for_filename,
|
||||
guess_lexer)
|
||||
from pygments.formatters import get_formatter_by_name
|
||||
|
||||
# initialize flask
|
||||
app = Flask(__name__)
|
||||
|
||||
# Routes
|
||||
@app.route('/')
|
||||
def hello_world():
|
||||
return 'Hello World!'
|
||||
@@ -14,9 +24,23 @@ def api_root():
|
||||
resp.headers['Content-Type'] = 'application/json'
|
||||
return resp
|
||||
|
||||
@app.route('/post', methods = ['POST'])
|
||||
def post_me():
|
||||
return request.json['stuff']
|
||||
@app.route('/api/highlight', methods = ['POST'])
|
||||
def api_highlight():
|
||||
if 'source' not in request.json:
|
||||
return make_response(None, 422)
|
||||
|
||||
if 'lang' in request.json:
|
||||
lexer = get_lexer_by_name(request.json['lang'])
|
||||
elif 'filename' in request.json:
|
||||
lexer = guess_lexer_for_filename(request.json['filename'],
|
||||
request.json['source'])
|
||||
elif 'mimetype' in request.json:
|
||||
lexer = get_lexer_for_mimetype(request.json['mimetype'])
|
||||
else:
|
||||
lexer = guess_lexer(request.json['source'])
|
||||
|
||||
formatter = get_formatter_by_name('html')
|
||||
return highlight(request.json['source'], lexer, formatter)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
|
||||
Reference in New Issue
Block a user