Set options of command line.

    Arguments:

        prs:      parser object of argparse
        keyword:  processing keyword
        required: True is required option (default is False)

def set_option(prs, keyword, required=False):
    """Set options of command line.

    Arguments:

        prs:      parser object of argparse
        keyword:  processing keyword
        required: True is required option (default is False)
    """
    if keyword == 'server':
        prs.add_argument(
            '-s', dest='server', required=True,
            help='specify TonicDNS Server hostname or IP address')

    if keyword == 'username':
        prs.add_argument('-u', dest='username', required=True,
                         help='TonicDNS username')

    if keyword == 'password':
        group = prs.add_mutually_exclusive_group(required=True)
        group.add_argument('-p', dest='password',
                           help='TonicDNS password')
        group.add_argument('-P', action='store_true',
                           help='TonicDNS password prompt')

    if keyword == 'infile':
        prs.add_argument('infile', action='store',
                         help='pre-converted text file')

    if keyword == 'domain':
        prs.add_argument('--domain', action='store', required=True,
                         help='create record with specify domain')
        prs.add_argument('--name', action='store', required=True,
                         help='specify with domain option')
        prs.add_argument('--rtype', action='store', required=True,
                         help='specify with domain option')
        prs.add_argument('--content', action='store', required=True,
                         help='specify with domain option')
        prs.add_argument('--ttl', action='store', default='3600',
                         help='specify with domain option, default 3600')
        prs.add_argument('--priority', action='store', default=False,
                         help='specify with domain and '
                         'rtype options as MX|SRV')

    if keyword == 'update':
        prs.add_argument('--new-type', action='store',
                         help='specify new value with domain option')
        prs.add_argument('--new-content', action='store',
                         help='specify new value with domain option')
        prs.add_argument('--new-ttl', action='store',
                         help='specify new value with domain option')
        prs.add_argument('--new-priority', action='store',
                         help='specify new value with domain option')

    if keyword == 'template':
        msg = 'specify template identifier'
        if required:
            prs.add_argument('--template', action='store',
                             required=True, help=msg)
        else:
            prs.add_argument('--template', action='store',
                             help=msg)

    if keyword == 'search':
        prs.add_argument('--search', action='store',
                         help='partial match search or refine search.\
                         latter syntax is "name,rtype,content"')