diff --git a/openbox-pipemenu-recent.py b/openbox-pipemenu-recent.py new file mode 100644 index 0000000..a424ca1 --- /dev/null +++ b/openbox-pipemenu-recent.py @@ -0,0 +1,57 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- +# +# openbox-pipemenu-recent.py +# +# Copyright 2017 kirbylife +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, +# MA 02110-1301, USA. +# +# + +import xml.etree.ElementTree +import os + +XMLFILE=os.environ['HOME']+"/.local/share/recently-used.xbel" + +def setItem(name,file=""): + if file not in "": + print "xdg-open "+file+"" + else: + print "" + +def main(args): + + ### Header ### + print "" + print "" + ### ### + + e = xml.etree.ElementTree.parse(XMLFILE).getroot() + files=e.findall("bookmark") + for c in range(len(files)-1,len(files)-11,-1): + file=files[c].get("href") + if "file://" in file: + setItem(file[file.rfind("/")+1:],file[7:]) + + ### Footer ### + print "" + ### ### + return 0 + +if __name__ == '__main__': + import sys + sys.exit(main(sys.argv)) diff --git a/openbox-pipemenu-steam.py b/openbox-pipemenu-steam.py new file mode 100644 index 0000000..9268c8a --- /dev/null +++ b/openbox-pipemenu-steam.py @@ -0,0 +1,73 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- +# +# openbox-pipemenu-steam.py +# +# Copyright 2017 kirbylife +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, +# MA 02110-1301, USA. +# +# + +from commands import getstatusoutput,getoutput +import os + +STEAM_URL=os.environ['HOME']+"/.steam/steam/steamapps" + +def setItem(name,appid=""): + if appid not in "": + print "steam steam://rungameid/"+appid+"" + else: + print "" + +def main(args): + games=[] + + ### Header ### + print "" + print "" + ### ### + + if getstatusoutput("cd "+STEAM_URL)[0] == 1: + setItem("Steam not installed") + else: + games=getoutput("ls "+STEAM_URL+" | grep acf").split("\n") + if len(games) == 0: + setItem("NO games installed") + else: + for c in games: + appid="" + name="" + #print STEAM_URL+"/"+c + manifest=open(STEAM_URL+"/"+c,"r") + data=manifest.read().split("\n") + manifest.close() + for f in data: + if '"appid"' in f: + appid=f.split('"')[3] + elif '"name"' in f: + name=f.split('"')[3] + setItem(name,appid) + + + ### Footer ### + print "" + ### ### + return 0 + +if __name__ == '__main__': + import sys + sys.exit(main(sys.argv))