Browse Source

making the printer print only 5 results/time

english-french
manetta 5 years ago
parent
commit
3a35965187
  1. 26
      printer.py
  2. 13
      start.py

26
printer.py

@ -40,16 +40,28 @@ def insert_linebreaks(string, linelength):
count = 0
return new
def printNow(query, results):
def printNow(query, results, results_count):
if connected == True:
print(escpos['reset'], file=stdout, flush=True)
print(escpos['init_printer'], file=stdout, flush=True)
print(escpos['select_international_character_set'], file=stdout, flush=True)
# print(escpos['select_international_character_set'], file=stdout, flush=True)
print(escpos['margin_left'], file=stdout, flush=True)
print(escpos['justify_center'], file=stdout, flush=True)
printed = False
if results_count == None:
results_count = 0
results_count_max = results_count + 5
current_count = 0
for x, document in results.items():
for n, sentence in enumerate(document['matches']):
print('current_count', current_count)
if current_count == results_count:
printed = True
if results_count < results_count_max:
print('results_count', results_count)
results_count += 1
sentence = str(sentence) # Turn Flask Markup object back to normal python string
sentence = sentence.replace('\n', ' ').replace(' ', ' ')
pattern = r'[\s\W\_]'+query+r'[\s\W\_\n]|^'+query+'|'+query+'$'
@ -88,6 +100,7 @@ def printNow(query, results):
if i + 1 == len(sentence_splitted):
print('\n | \n', file=stdout, flush=True)
sleep(3)
current_count += 1
print(escpos['paperfeed_1l'], file=stdout, flush=True)
print(escpos['paperfeed_1l'], file=stdout, flush=True)
@ -96,8 +109,15 @@ def printNow(query, results):
print(escpos['papercut'], file=stdout, flush=True)
print(escpos['reset'], file=stdout, flush=True)
# reset when all results are printed
if printed == False:
results_count = 0
# printNow(query, results, results_count)
return results_count
# query = 'noise'
# results, _, _ = readings.request_results(query)
# pprint(results)
# printNow(query, results)
# printNow(query, results, 0)

13
start.py

@ -47,6 +47,13 @@ def index_lang(lang):
else:
connection = 'disconnected'
# Check if print command
if request.args.get('results_count', ''):
results_count = int(request.args.get('results_count', ''))
print('results_count', results_count)
else:
results_count = 0
if request.args.get('q', ''):
results, filenames, analytics = readings.request_results(query)
@ -54,9 +61,11 @@ def index_lang(lang):
if request.args.get('print', '') == 'now':
if connection == 'connected':
print('*print!*', file=stdout)
printer.printNow(query, results)
print('results_count (before)', results_count)
results_count = printer.printNow(query, results, results_count)
print('results_count (after)', results_count)
return flask.render_template(lang+'/results.html', query=query, results=results, filenames=filenames, connection=connection, suggestions=suggestions, analytics=analytics, lang=lang)
return flask.render_template(lang+'/results.html', query=query, results=results, filenames=filenames, connection=connection, suggestions=suggestions, analytics=analytics, lang=lang, results_count=results_count)
else:
index = readings.load_index()

Loading…
Cancel
Save