X-Git-Url: https://git.phdru.name/?a=blobdiff_plain;f=print-filename.py;h=91088c25a5752e690d43c0a571f8ed056f757550;hb=2474eccebfb7b0b9868c0002109bcf9cad3f29d9;hp=d664d79d360d32b1d92422ae79e9157ff7459db3;hpb=65ff4c2e85b037a673c282b02ffa2db10c7eebd3;p=xsetbg.git diff --git a/print-filename.py b/print-filename.py index d664d79..91088c2 100755 --- a/print-filename.py +++ b/print-filename.py @@ -7,12 +7,8 @@ This file is a part of XSetBg. """ -__version__ = "$Revision$"[11:-2] -__revision__ = "$Id$"[5:-2] -__date__ = "$Date$"[7:-2] - -__author__ = "Oleg BroytMann " -__copyright__ = "Copyright (C) 2004-2007 PhiloSoft Design" +__author__ = "Oleg Broytman " +__copyright__ = "Copyright (C) 2004-2012 PhiloSoft Design" __license__ = "GNU GPL" @@ -20,7 +16,7 @@ import sys, os, shelve def usage(code=0): - sys.stderr.write("Usage: %s [-0|--null] [-n|--no-newline] [-o|--old] [-s|--spaces] [-w|--width] [width]\n" % sys.argv[0]) + sys.stderr.write("Usage: %s [-o|--old]\n" % sys.argv[0]) sys.exit(code) @@ -28,44 +24,33 @@ def get_args(): from getopt import getopt, GetoptError try: - options, arguments = getopt(sys.argv[1:], "0nosw:", - ["null", "no-newline", "old", "spaces", "width="]) + options, arguments = getopt(sys.argv[1:], "he:o", + ["help", "output-encoding=", "old"]) except GetoptError: usage(1) - print0 = False - newline = True old = False - spaces = '' - width = None + output_encoding = None for option, value in options: if option in ("-h", "--help"): usage() - elif option in ("-0", "--null"): - print0 = True - elif option in ("-n", "--no-newline"): - newline = False + elif option in ("-e", "--output-encoding"): + output_encoding = value elif option in ("-o", "--old"): old = True - elif option in ("-s", "--spaces"): - spaces = ' ' - elif option in ("-w", "--width"): - width = int(value) else: usage(2) if arguments: - if width is not None: - usage(3) - elif len(arguments) > 1: - usage(4) - else: - width = int(arguments[0]) + usage(3) - return print0, newline, old, spaces, width + if output_encoding is None: + from m_lib.defenc import default_encoding + output_encoding = default_encoding + return old, output_encoding -print0, newline, old, spaces, width = get_args() +old, output_encoding = get_args() xsetbg_dir = os.path.join(os.environ["HOME"], "lib", "xsetbg") @@ -84,21 +69,11 @@ else: filename = global_db[key] global_db.close() -from m_lib.defenc import default_encoding -filename = unicode(filename, default_encoding) - -if width: - lines = [] - while filename: - lines.append("%s%s%s" % (spaces, filename[:width], spaces)) - filename = filename[width:] - filename = u'\n'.join(lines) -else: - filename = u"%s%s%s" % (spaces, filename, spaces) +from ConfigParser import SafeConfigParser +config = SafeConfigParser() +config.read("xsetbg.conf") -sys.stdout.write(filename.encode(default_encoding)) +fs_encoding = config.get("images", "fs_encoding") +filename = unicode(filename, fs_encoding) -if print0: - sys.stdout.write('\0') -elif newline: - print +print filename.encode(output_encoding)