"""
__author__ = "Oleg Broytman <phd@phdru.name>"
-__copyright__ = "Copyright (C) 2004-2012 PhiloSoft Design"
+__copyright__ = "Copyright (C) 2004-2014 PhiloSoft Design"
__license__ = "GNU GPL"
-import sys, os, shelve
+import sys, os
+from xsetbg_conf import xsetbg_conf
+from xsetbg_db import xsetbg_db
def usage(code=0):
from getopt import getopt, GetoptError
try:
- options, arguments = getopt(sys.argv[1:], "ho", ["help", "old"])
+ options, arguments = getopt(sys.argv[1:], "he:o",
+ ["help", "output-encoding=", "old"])
except GetoptError:
usage(1)
old = False
+ output_encoding = None
for option, value in options:
if option in ("-h", "--help"):
usage()
+ elif option in ("-e", "--output-encoding"):
+ output_encoding = value
elif option in ("-o", "--old"):
old = True
else:
if arguments:
usage(3)
- return old
+ if output_encoding is None:
+ from m_lib.defenc import default_encoding
+ output_encoding = default_encoding
+ return old, output_encoding
-old = get_args()
+old, output_encoding = get_args()
-xsetbg_dir = os.path.join(os.environ["HOME"], "lib", "xsetbg")
-os.chdir(xsetbg_dir)
-
-global_db_name = "xsetbg.db"
filename_key = "filename"
old_filename_key = "old_filename"
-
-global_db = shelve.open(global_db_name, flag='r')
if old:
key = old_filename_key
else:
key = filename_key
-filename = global_db[key]
-global_db.close()
-from ConfigParser import SafeConfigParser
-config = SafeConfigParser()
-config.read("xsetbg.conf")
+filename = xsetbg_db[key]
+xsetbg_db.close()
-fs_encoding = config.get("images", "fs_encoding")
+fs_encoding = xsetbg_conf.get("images", "fs_encoding")
filename = unicode(filename, fs_encoding)
-from m_lib.defenc import default_encoding
-print filename.encode(default_encoding)
+print filename.encode(output_encoding)