mirror of
https://github.com/moparisthebest/SickRage
synced 2024-10-31 23:45:02 -04:00
44 lines
1.4 KiB
Python
44 lines
1.4 KiB
Python
|
from optparse import OptionGroup
|
||
|
from lib.hachoir_core.log import log
|
||
|
from lib.hachoir_core.i18n import _, getTerminalCharset
|
||
|
from lib.hachoir_core.tools import makePrintable
|
||
|
import lib.hachoir_core.config as config
|
||
|
|
||
|
def getHachoirOptions(parser):
|
||
|
"""
|
||
|
Create an option group (type optparse.OptionGroup) of Hachoir
|
||
|
library options.
|
||
|
"""
|
||
|
def setLogFilename(*args):
|
||
|
log.setFilename(args[2])
|
||
|
|
||
|
common = OptionGroup(parser, _("Hachoir library"), \
|
||
|
"Configure Hachoir library")
|
||
|
common.add_option("--verbose", help=_("Verbose mode"),
|
||
|
default=False, action="store_true")
|
||
|
common.add_option("--log", help=_("Write log in a file"),
|
||
|
type="string", action="callback", callback=setLogFilename)
|
||
|
common.add_option("--quiet", help=_("Quiet mode (don't display warning)"),
|
||
|
default=False, action="store_true")
|
||
|
common.add_option("--debug", help=_("Debug mode"),
|
||
|
default=False, action="store_true")
|
||
|
return common
|
||
|
|
||
|
def configureHachoir(option):
|
||
|
# Configure Hachoir using "option" (value from optparse)
|
||
|
if option.quiet:
|
||
|
config.quiet = True
|
||
|
if option.verbose:
|
||
|
config.verbose = True
|
||
|
if option.debug:
|
||
|
config.debug = True
|
||
|
|
||
|
def unicodeFilename(filename, charset=None):
|
||
|
if not charset:
|
||
|
charset = getTerminalCharset()
|
||
|
try:
|
||
|
return unicode(filename, charset)
|
||
|
except UnicodeDecodeError:
|
||
|
return makePrintable(filename, charset, to_unicode=True)
|
||
|
|