2008-01-16 Benny Malengier <benny.malengier@gramps-project.org>
* src/ArgHandler.py: don't crash arghandler on wrong input #1592 * src/const.py.in: Add -h and --help so those work for non gnome users svn: r9853
This commit is contained in:
parent
93395e747a
commit
4172c30406
@ -1,3 +1,7 @@
|
|||||||
|
2008-01-16 Benny Malengier <benny.malengier@gramps-project.org>
|
||||||
|
* src/ArgHandler.py: don't crash arghandler on wrong input #1592
|
||||||
|
* src/const.py.in: Add -h and --help so those work for non gnome users
|
||||||
|
|
||||||
2008-01-15 Raphael Ackermann <raphael.ackermann@gmail.com>
|
2008-01-15 Raphael Ackermann <raphael.ackermann@gmail.com>
|
||||||
* data/man/nl/Makefile.am: added doc
|
* data/man/nl/Makefile.am: added doc
|
||||||
* configure.in: added sv for swedish makefile
|
* configure.in: added sv for swedish makefile
|
||||||
|
@ -66,6 +66,25 @@ IMPORT_TYPES = (const.APP_GRAMPS_XML, const.APP_GEDCOM,
|
|||||||
const.APP_GRAMPS_PKG, const.APP_GENEWEB,
|
const.APP_GRAMPS_PKG, const.APP_GENEWEB,
|
||||||
const.APP_GRAMPS)
|
const.APP_GRAMPS)
|
||||||
|
|
||||||
|
_help = """
|
||||||
|
Usage: gramps.py [OPTION...]
|
||||||
|
--load-modules=MODULE1,MODULE2,... Dynamic modules to load
|
||||||
|
|
||||||
|
Help options
|
||||||
|
-?, --help Show this help message
|
||||||
|
--usage Display brief usage message
|
||||||
|
|
||||||
|
Application options
|
||||||
|
-O, --open=FAMILY_TREE Open family tree
|
||||||
|
-i, --import=FILENAME Import file
|
||||||
|
-o, --output=FILENAME Write file
|
||||||
|
-f, --format=FORMAT Specify format
|
||||||
|
-a, --action=ACTION Specify action
|
||||||
|
-p, --options=OPTIONS_STRING Specify options
|
||||||
|
-d, --debug=LOGGER_NAME Enable debug logs
|
||||||
|
|
||||||
|
"""
|
||||||
|
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
# ArgHandler
|
# ArgHandler
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
@ -110,6 +129,7 @@ class ArgHandler:
|
|||||||
self.imports = []
|
self.imports = []
|
||||||
self.imp_db_path = None
|
self.imp_db_path = None
|
||||||
self.list = False
|
self.list = False
|
||||||
|
self.help = False
|
||||||
|
|
||||||
self.parse_args()
|
self.parse_args()
|
||||||
|
|
||||||
@ -120,7 +140,7 @@ class ArgHandler:
|
|||||||
"""
|
"""
|
||||||
Fill in lists with open, exports, imports, and actions options.
|
Fill in lists with open, exports, imports, and actions options.
|
||||||
|
|
||||||
Any parsing errors lead to abort via sys.exit(1).
|
Any parsing errors lead to abort
|
||||||
|
|
||||||
Possible:
|
Possible:
|
||||||
1/ Just the family tree (name or database dir)
|
1/ Just the family tree (name or database dir)
|
||||||
@ -136,10 +156,13 @@ class ArgHandler:
|
|||||||
try:
|
try:
|
||||||
options, leftargs = getopt.getopt(self.args[1:],
|
options, leftargs = getopt.getopt(self.args[1:],
|
||||||
const.SHORTOPTS, const.LONGOPTS)
|
const.SHORTOPTS, const.LONGOPTS)
|
||||||
except getopt.GetoptError:
|
except getopt.GetoptError, msg:
|
||||||
|
print msg
|
||||||
# return without filling anything if we could not parse the args
|
# return without filling anything if we could not parse the args
|
||||||
print "Error parsing arguments: %s " % self.args[1:]
|
print "Error parsing the arguments: %s " % self.args[1:]
|
||||||
sys.exit(1)
|
print "Type gramps --help for an overview of commands, or ",
|
||||||
|
print "read manual pages."
|
||||||
|
sys.exit(0)
|
||||||
|
|
||||||
if leftargs:
|
if leftargs:
|
||||||
# if there were an argument without option,
|
# if there were an argument without option,
|
||||||
@ -276,8 +299,10 @@ class ArgHandler:
|
|||||||
elif option in ('-d', '--debug'):
|
elif option in ('-d', '--debug'):
|
||||||
logger = logging.getLogger(value)
|
logger = logging.getLogger(value)
|
||||||
logger.setLevel(logging.DEBUG)
|
logger.setLevel(logging.DEBUG)
|
||||||
elif option in ('-l',) :
|
elif option in ('-l',):
|
||||||
self.list = True
|
self.list = True
|
||||||
|
elif option in ('-h', '-?', '--help'):
|
||||||
|
self.help = True
|
||||||
|
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
# Determine the need for GUI
|
# Determine the need for GUI
|
||||||
@ -318,6 +343,9 @@ class ArgHandler:
|
|||||||
for name, dirname in dbman.family_tree_list():
|
for name, dirname in dbman.family_tree_list():
|
||||||
print dirname, ', with name ', name
|
print dirname, ', with name ', name
|
||||||
sys.exit(0)
|
sys.exit(0)
|
||||||
|
if self.help:
|
||||||
|
print _help
|
||||||
|
sys.exit(0)
|
||||||
if self.open_gui:
|
if self.open_gui:
|
||||||
# Filename was given as gramps FILENAME.
|
# Filename was given as gramps FILENAME.
|
||||||
# Open a session with that file. Forget the rest of given arguments
|
# Open a session with that file. Forget the rest of given arguments
|
||||||
@ -365,7 +393,7 @@ class ArgHandler:
|
|||||||
_('Not a valid Family tree given to open\n\n'
|
_('Not a valid Family tree given to open\n\n'
|
||||||
))
|
))
|
||||||
print "Exiting..."
|
print "Exiting..."
|
||||||
sys.exit(1)
|
sys.exit(0)
|
||||||
if success:
|
if success:
|
||||||
# Add the file to the recent items
|
# Add the file to the recent items
|
||||||
path = os.path.join(filename, "name.txt")
|
path = os.path.join(filename, "name.txt")
|
||||||
@ -401,7 +429,7 @@ class ArgHandler:
|
|||||||
else:
|
else:
|
||||||
print "Only Family trees can be opened."
|
print "Only Family trees can be opened."
|
||||||
print "Exiting..."
|
print "Exiting..."
|
||||||
sys.exit(1)
|
sys.exit(0)
|
||||||
|
|
||||||
try:
|
try:
|
||||||
self.vm.open_activate(filename)
|
self.vm.open_activate(filename)
|
||||||
|
@ -230,5 +230,5 @@ LONGOPTS = [
|
|||||||
"version",
|
"version",
|
||||||
]
|
]
|
||||||
|
|
||||||
SHORTOPTS = "O:i:o:f:a:p:d:?:l"
|
SHORTOPTS = "O:i:o:f:a:p:d:lh?"
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user