aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJon Bernard <bernardj@gmail.com>2010-10-26 22:18:24 -0400
committerJon Bernard <bernardj@gmail.com>2010-10-26 22:18:24 -0400
commit55b32df671c330e5a041a1d2da0ac0f20db9d74d (patch)
treec515b17ec967719d268e773c3df830ebcfa0eb61
parentf37577fbe8d80b0aefc239b501d6a4ee94b886a2 (diff)
downloadpepseq-55b32df671c330e5a041a1d2da0ac0f20db9d74d.zip
Refactor and cleanup bin/pepseq
-rwxr-xr-xbin/pepseq55
1 files changed, 32 insertions, 23 deletions
diff --git a/bin/pepseq b/bin/pepseq
index c841419..280e471 100755
--- a/bin/pepseq
+++ b/bin/pepseq
@@ -1,15 +1,9 @@
#!/usr/bin/python
# -*- coding: utf-8 -*-
-import logging
-import optparse
import os
import sys
-import gettext
-from gettext import gettext as _
-gettext.textdomain('pepseq')
-
# Add project root directory (enable symlink, and trunk execution).
PROJECT_ROOT_DIRECTORY = os.path.abspath(
os.path.dirname(os.path.dirname(os.path.realpath(sys.argv[0]))))
@@ -17,42 +11,57 @@ PROJECT_ROOT_DIRECTORY = os.path.abspath(
if (os.path.exists(os.path.join(PROJECT_ROOT_DIRECTORY, 'pepseq'))
and PROJECT_ROOT_DIRECTORY not in sys.path):
sys.path.insert(0, PROJECT_ROOT_DIRECTORY)
- os.putenv('PYTHONPATH', PROJECT_ROOT_DIRECTORY) # for subprocesses
+ os.putenv('PYTHONPATH', PROJECT_ROOT_DIRECTORY)
-from pepseq.core import __version__
-LEVELS = ( logging.ERROR,
- logging.WARNING,
- logging.INFO,
- logging.DEBUG,
- )
+import logging
+import optparse
+import pepseq
+
+import gettext
+from gettext import gettext as _
+gettext.textdomain('pepseq')
+
+LEVELS = (logging.ERROR,
+ logging.WARNING,
+ logging.INFO,
+ logging.DEBUG)
-if __name__ == "__main__":
- # Support for command line options.
+def parse_args():
usage = _("pepseq [options]")
- parser = optparse.OptionParser(version="pepseq %s" % __version__, usage=usage)
+ parser = optparse.OptionParser(version="pepseq %s" % pepseq.__version__,
+ usage=usage)
parser.add_option('-d', '--debug', dest='debug_mode', action='store_true',
help=_('Print the maximum debugging info (implies -vv)'))
parser.add_option('-v', '--verbose', dest='logging_level', action='count',
help=_('set error_level output to warning, info, and then debug'))
- # exemple of silly CLI option
parser.add_option("-f", "--foo", action="store", dest="foo",
help=_("foo should be assigned to bar"))
parser.set_defaults(logging_level=0, foo=None)
- (options, args) = parser.parse_args()
+ return parser.parse_args()
+
+
+def main():
+ (options, args) = parse_args()
- # set the verbosity
if options.debug_mode:
- options.logging_level = 3
- logging.basicConfig(level=LEVELS[options.logging_level], format='%(asctime)s %(levelname)s %(message)s')
+ loglevel = 3
+ else:
+ try:
+ loglevel = LEVELS[options.logging_level]
+ print 'loglevel: %d, options.logging_level: %d' % (loglevel, options.logging_level)
+ except IndexError:
+ loglevel = 3
+ logging.basicConfig(level=loglevel, format='%(asctime)s %(levelname)s %(message)s')
- # this is the easter egg (:
if options.foo == 'bar':
logging.warning(_('easter egg found'))
print(_("Schweet"))
- # Run your cli application there.
print _("I'm launched and my args are: %s") % (" ".join(args))
logging.debug(_('end of prog'))
+
+if __name__ == "__main__":
+ main()