20 lines
523 B
Python
20 lines
523 B
Python
|
#!/usr/bin/env python3
|
||
|
# -*- coding: utf-8 -*-
|
||
|
|
||
|
import os
|
||
|
import sys
|
||
|
import json
|
||
|
import subprocess
|
||
|
|
||
|
|
||
|
class Dmenu(object):
|
||
|
def __init__(self, items: list):
|
||
|
with open(os.path.dirname(sys.argv[0]) + "/dmenu.json") as fp:
|
||
|
self._dmenu = json.load(fp)["dmenu"]
|
||
|
self._items = items
|
||
|
|
||
|
def run(self):
|
||
|
"""Returns (exitCode, stdout)"""
|
||
|
p1 = subprocess.run(self._dmenu, input="\n".join(self._items), encoding="utf-8", stdout=subprocess.PIPE)
|
||
|
return (p1.returncode, p1.stdout)
|