29 lines
814 B
Python
29 lines
814 B
Python
import base64
|
|
import inspect
|
|
import os.path as p
|
|
import sys
|
|
|
|
PATH = p.dirname(p.abspath(inspect.getfile(inspect.currentframe())))
|
|
|
|
def count(file, icon='default'):
|
|
project = ''
|
|
items = []
|
|
with open(p.expanduser(file)) as f:
|
|
for line in f:
|
|
if project.lower() == 'archive': break
|
|
line = line.strip()
|
|
if line.endswith(':'):
|
|
project = line[:-1]
|
|
elif line.startswith('- ') and '@done' not in line:
|
|
items.append('%s (%s)' % (line[2:], project))
|
|
|
|
if not items: return
|
|
|
|
with open(p.join(PATH, icon + '.png')) as img:
|
|
icon = base64.b64encode(img.read())
|
|
|
|
print("%d | templateImage='%s'" % (len(items), icon))
|
|
print('---')
|
|
print("%s | terminal=false bash=/usr/bin/open param1='%s'" % (file, p.expanduser(file)))
|
|
print('---')
|
|
for item in items: print(item)
|