+ parser = subparsers.add_parser('books', help='Search books')
+ parser.add_argument('-t', '--title', help='search by title')
+ parser.add_argument('-s', '--series', help='search by series')
+ parser.add_argument('-a', '--archive', help='search by archive (zip file)')
+ parser.add_argument('-f', '--file', help='search by file name')
+ parser.add_argument('--id', type=int, help='search by database id')
+ parser.add_argument('--surname', help='search by author\'s surname')
+ parser.add_argument('--name', help='search by author\'s name')
+ parser.add_argument('--misc-name', help='search by author\'s misc. name')
+ parser.add_argument('--fullname', help='search by author\'s full name')
+ parser.add_argument('--aid', type=int, help='search by author\'s id')
+ parser.add_argument('-e', '--ext', help='search by file extension')
+ parser.add_argument('--eid', type=int, help='search by extension\'s id')
+ parser.add_argument('--gname', help='search by genre\'s name')
+ parser.add_argument('--gtitle', help='search by genre\'s title')
+ parser.add_argument('--gid', type=int, help='search by genre\'s id')
+ parser.add_argument('-l', '--lang', help='search by language')
+ parser.add_argument('--lid', type=int, help='search by language\'s id')
+ parser.add_argument('--filters', action='store_true',
+ help='use filters from config')
+ parser.add_argument('-P', '--path', help='path to the library archives')
+ parser.add_argument('--download-to', nargs='?',
+ const=None, default=os.path.curdir,
+ help='download directory')
+ parser.add_argument('-F', '--format',
+ help='download format, default is %%f')
+ parser.add_argument('--get', action='store_true',
+ help='download exactly one book')
+ parser.add_argument('--get-many', type=int,
+ help='download at most this many books')
+ parser.set_defaults(func=_search_books)
+
+ parser = subparsers.add_parser('ext', help='Search extensions')
+ parser.add_argument('name', nargs='?', help='search by name')
+ parser.add_argument('--id', type=int, help='search by database id')
+ parser.set_defaults(func=_search_extensions)
+
+ parser = subparsers.add_parser('genres', help='Search genres')
+ parser.add_argument('-n', '--name', help='search by name')
+ parser.add_argument('-t', '--title', help='search by title')
+ parser.add_argument('--id', type=int, help='search by database id')
+ parser.set_defaults(func=_search_genres)
+
+ parser = subparsers.add_parser('lang', help='Search languages')
+ parser.add_argument('name', nargs='?', help='search by name')
+ parser.add_argument('--id', type=int, help='search by database id')
+ parser.set_defaults(func=_search_languages)
+