@command(short_help='Installs provided packages and adds them to Pipfile, or (if none is given), installs all packages.', context_settings=dict(ignore_unknown_options=True, allow_extra_args=True))
@argument('package_name', default=False)
@argument('more_packages', nargs=(- 1))
@option('--dev', '-d', is_flag=True, default=False, help='Install package(s) in [dev-packages].')
@option('--three/--two', is_flag=True, default=None, help='Use Python 3/2 when creating virtualenv.')
@option('--python', default=False, nargs=1, callback=validate_python_path, help='Specify which version of Python virtualenv should use.')
@option('--pypi-mirror', default=PIPENV_PYPI_MIRROR, nargs=1, callback=validate_pypi_mirror, help='Specify a PyPI mirror.')
@option('--system', is_flag=True, default=False, help='System pip management.')
@option('--requirements', '-r', nargs=1, default=False, help='Import a requirements.txt file.')
@option('--code', '-c', nargs=1, default=False, help='Import from codebase.')
@option('--verbose', '-v', is_flag=True, default=False, help='Verbose mode.', callback=setup_verbose)
@option('--ignore-pipfile', is_flag=True, default=False, help='Ignore Pipfile when installing, using the Pipfile.lock.')
@option('--sequential', is_flag=True, default=False, help='Install dependencies one-at-a-time, instead of concurrently.')
@option('--skip-lock', is_flag=True, default=False, help=u'Ignore locking mechanisms when installing—use the Pipfile, instead.')
@option('--deploy', is_flag=True, default=False, help=u'Abort if the Pipfile.lock is out–of–date, or Python version is wrong.')
@option('--pre', is_flag=True, default=False, help=u'Allow pre–releases.')
@option('--keep-outdated', is_flag=True, default=False, help=u'Keep out–dated dependencies from being updated in Pipfile.lock.')
@option('--selective-upgrade', is_flag=True, default=False, help='Update specified packages.')
def install(package_name=False, more_packages=False, dev=False, three=False, python=False, pypi_mirror=None, system=False, lock=True, ignore_pipfile=False, skip_lock=False, verbose=False, requirements=False, sequential=False, pre=False, code=False, deploy=False, keep_outdated=False, selective_upgrade=False):
    from .core import do_install
    do_install(package_name=package_name, more_packages=more_packages, dev=dev, three=three, python=python, pypi_mirror=pypi_mirror, system=system, lock=lock, ignore_pipfile=ignore_pipfile, skip_lock=skip_lock, verbose=verbose, requirements=requirements, sequential=sequential, pre=pre, code=code, deploy=deploy, keep_outdated=keep_outdated, selective_upgrade=selective_upgrade)
@command(short_help='Installs provided packages and adds them to Pipfile, or (if none is given), installs all packages.', context_settings=dict(ignore_unknown_options=True, allow_extra_args=True))
@argument('package_name', default=False)
@argument('more_packages', nargs=(- 1))
@option('--dev', '-d', is_flag=True, default=False, help='Install package(s) in [dev-packages].')
@option('--three/--two', is_flag=True, default=None, help='Use Python 3/2 when creating virtualenv.')
@option('--python', default=False, nargs=1, callback=validate_python_path, help='Specify which version of Python virtualenv should use.')
@option('--pypi-mirror', default=PIPENV_PYPI_MIRROR, nargs=1, callback=validate_pypi_mirror, help='Specify a PyPI mirror.')
@option('--system', is_flag=True, default=False, help='System pip management.')
@option('--requirements', '-r', nargs=1, default=False, help='Import a requirements.txt file.')
@option('--code', '-c', nargs=1, default=False, help='Import from codebase.')
@option('--verbose', '-v', is_flag=True, default=False, help='Verbose mode.', callback=setup_verbose)
@option('--ignore-pipfile', is_flag=True, default=False, help='Ignore Pipfile when installing, using the Pipfile.lock.')
@option('--sequential', is_flag=True, default=False, help='Install dependencies one-at-a-time, instead of concurrently.')
@option('--skip-lock', is_flag=True, default=False, help=u'Ignore locking mechanisms when installing—use the Pipfile, instead.')
@option('--deploy', is_flag=True, default=False, help=u'Abort if the Pipfile.lock is out–of–date, or Python version is wrong.')
@option('--pre', is_flag=True, default=False, help=u'Allow pre–releases.')
@option('--keep-outdated', is_flag=True, default=False, help=u'Keep out–dated dependencies from being updated in Pipfile.lock.')
@option('--selective-upgrade', is_flag=True, default=False, help='Update specified packages.')
def install(package_name=False, more_packages=False, dev=False, three=False, python=False, pypi_mirror=None, system=False, lock=True, ignore_pipfile=False, skip_lock=False, verbose=False, requirements=False, sequential=False, pre=False, code=False, deploy=False, keep_outdated=False, selective_upgrade=False):
    from .core import do_install
    do_install(package_name=package_name, more_packages=more_packages, dev=dev, three=three, python=python, pypi_mirror=pypi_mirror, system=system, lock=lock, ignore_pipfile=ignore_pipfile, skip_lock=skip_lock, verbose=verbose, requirements=requirements, sequential=sequential, pre=pre, code=code, deploy=deploy, keep_outdated=keep_outdated, selective_upgrade=selective_upgrade)