# AUTOMATICALLY GENERATED by `shtab` _shtab_ahriman_subparsers=('aur-search' 'search' 'help' 'help-commands-unsafe' 'help-updates' 'help-version' 'version' 'package-add' 'add' 'package-update' 'package-remove' 'remove' 'package-status' 'status' 'package-status-remove' 'package-status-update' 'status-update' 'patch-add' 'patch-list' 'patch-remove' 'patch-set-add' 'repo-backup' 'repo-check' 'check' 'repo-create-keyring' 'repo-create-mirrorlist' 'repo-daemon' 'daemon' 'repo-rebuild' 'rebuild' 'repo-remove-unknown' 'remove-unknown' 'repo-report' 'report' 'repo-restore' 'repo-sign' 'sign' 'repo-status-update' 'repo-sync' 'sync' 'repo-tree' 'repo-triggers' 'repo-update' 'update' 'service-clean' 'clean' 'repo-clean' 'service-config' 'config' 'repo-config' 'service-config-validate' 'config-validate' 'repo-config-validate' 'service-key-import' 'key-import' 'service-setup' 'init' 'repo-init' 'repo-setup' 'setup' 'service-shell' 'shell' 'user-add' 'user-list' 'user-remove' 'web') _shtab_ahriman_option_strings=('-h' '--help' '-a' '--architecture' '-c' '--configuration' '--force' '-l' '--lock' '--log-handler' '--report' '--no-report' '-q' '--quiet' '--unsafe' '-V' '--version') _shtab_ahriman_aur_search_option_strings=('-h' '--help' '-e' '--exit-code' '--info' '--no-info' '--sort-by') _shtab_ahriman_search_option_strings=('-h' '--help' '-e' '--exit-code' '--info' '--no-info' '--sort-by') _shtab_ahriman_help_option_strings=('-h' '--help') _shtab_ahriman_help_commands_unsafe_option_strings=('-h' '--help') _shtab_ahriman_help_updates_option_strings=('-h' '--help' '-e' '--exit-code') _shtab_ahriman_help_version_option_strings=('-h' '--help') _shtab_ahriman_version_option_strings=('-h' '--help') _shtab_ahriman_package_add_option_strings=('-h' '--help' '--dependencies' '--no-dependencies' '-e' '--exit-code' '-n' '--now' '-y' '--refresh' '-s' '--source' '-u' '--username') _shtab_ahriman_add_option_strings=('-h' '--help' '--dependencies' '--no-dependencies' '-e' '--exit-code' '-n' '--now' '-y' '--refresh' '-s' '--source' '-u' '--username') _shtab_ahriman_package_update_option_strings=('-h' '--help' '--dependencies' '--no-dependencies' '-e' '--exit-code' '-n' '--now' '-y' '--refresh' '-s' '--source' '-u' '--username') _shtab_ahriman_package_remove_option_strings=('-h' '--help') _shtab_ahriman_remove_option_strings=('-h' '--help') _shtab_ahriman_package_status_option_strings=('-h' '--help' '--ahriman' '-e' '--exit-code' '--info' '--no-info' '-s' '--status') _shtab_ahriman_status_option_strings=('-h' '--help' '--ahriman' '-e' '--exit-code' '--info' '--no-info' '-s' '--status') _shtab_ahriman_package_status_remove_option_strings=('-h' '--help') _shtab_ahriman_package_status_update_option_strings=('-h' '--help' '-s' '--status') _shtab_ahriman_status_update_option_strings=('-h' '--help' '-s' '--status') _shtab_ahriman_patch_add_option_strings=('-h' '--help') _shtab_ahriman_patch_list_option_strings=('-h' '--help' '-e' '--exit-code' '-v' '--variable') _shtab_ahriman_patch_remove_option_strings=('-h' '--help' '-v' '--variable') _shtab_ahriman_patch_set_add_option_strings=('-h' '--help' '-t' '--track') _shtab_ahriman_repo_backup_option_strings=('-h' '--help') _shtab_ahriman_repo_check_option_strings=('-h' '--help' '-e' '--exit-code' '--vcs' '--no-vcs' '-y' '--refresh') _shtab_ahriman_check_option_strings=('-h' '--help' '-e' '--exit-code' '--vcs' '--no-vcs' '-y' '--refresh') _shtab_ahriman_repo_create_keyring_option_strings=('-h' '--help') _shtab_ahriman_repo_create_mirrorlist_option_strings=('-h' '--help') _shtab_ahriman_repo_daemon_option_strings=('-h' '--help' '-i' '--interval' '--aur' '--no-aur' '--dependencies' '--no-dependencies' '--local' '--no-local' '--manual' '--no-manual' '--vcs' '--no-vcs' '-y' '--refresh') _shtab_ahriman_daemon_option_strings=('-h' '--help' '-i' '--interval' '--aur' '--no-aur' '--dependencies' '--no-dependencies' '--local' '--no-local' '--manual' '--no-manual' '--vcs' '--no-vcs' '-y' '--refresh') _shtab_ahriman_repo_rebuild_option_strings=('-h' '--help' '--depends-on' '--dry-run' '--from-database' '-e' '--exit-code' '-s' '--status' '-u' '--username') _shtab_ahriman_rebuild_option_strings=('-h' '--help' '--depends-on' '--dry-run' '--from-database' '-e' '--exit-code' '-s' '--status' '-u' '--username') _shtab_ahriman_repo_remove_unknown_option_strings=('-h' '--help' '--dry-run') _shtab_ahriman_remove_unknown_option_strings=('-h' '--help' '--dry-run') _shtab_ahriman_repo_report_option_strings=('-h' '--help') _shtab_ahriman_report_option_strings=('-h' '--help') _shtab_ahriman_repo_restore_option_strings=('-h' '--help' '-o' '--output') _shtab_ahriman_repo_sign_option_strings=('-h' '--help') _shtab_ahriman_sign_option_strings=('-h' '--help') _shtab_ahriman_repo_status_update_option_strings=('-h' '--help' '-s' '--status') _shtab_ahriman_repo_sync_option_strings=('-h' '--help') _shtab_ahriman_sync_option_strings=('-h' '--help') _shtab_ahriman_repo_tree_option_strings=('-h' '--help') _shtab_ahriman_repo_triggers_option_strings=('-h' '--help') _shtab_ahriman_repo_update_option_strings=('-h' '--help' '--aur' '--no-aur' '--dependencies' '--no-dependencies' '--dry-run' '-e' '--exit-code' '--local' '--no-local' '--manual' '--no-manual' '-u' '--username' '--vcs' '--no-vcs' '-y' '--refresh') _shtab_ahriman_update_option_strings=('-h' '--help' '--aur' '--no-aur' '--dependencies' '--no-dependencies' '--dry-run' '-e' '--exit-code' '--local' '--no-local' '--manual' '--no-manual' '-u' '--username' '--vcs' '--no-vcs' '-y' '--refresh') _shtab_ahriman_service_clean_option_strings=('-h' '--help' '--cache' '--no-cache' '--chroot' '--no-chroot' '--manual' '--no-manual' '--packages' '--no-packages' '--pacman' '--no-pacman') _shtab_ahriman_clean_option_strings=('-h' '--help' '--cache' '--no-cache' '--chroot' '--no-chroot' '--manual' '--no-manual' '--packages' '--no-packages' '--pacman' '--no-pacman') _shtab_ahriman_repo_clean_option_strings=('-h' '--help' '--cache' '--no-cache' '--chroot' '--no-chroot' '--manual' '--no-manual' '--packages' '--no-packages' '--pacman' '--no-pacman') _shtab_ahriman_service_config_option_strings=('-h' '--help' '--secure' '--no-secure') _shtab_ahriman_config_option_strings=('-h' '--help' '--secure' '--no-secure') _shtab_ahriman_repo_config_option_strings=('-h' '--help' '--secure' '--no-secure') _shtab_ahriman_service_config_validate_option_strings=('-h' '--help' '-e' '--exit-code') _shtab_ahriman_config_validate_option_strings=('-h' '--help' '-e' '--exit-code') _shtab_ahriman_repo_config_validate_option_strings=('-h' '--help' '-e' '--exit-code') _shtab_ahriman_service_key_import_option_strings=('-h' '--help' '--key-server') _shtab_ahriman_key_import_option_strings=('-h' '--help' '--key-server') _shtab_ahriman_service_setup_option_strings=('-h' '--help' '--build-as-user' '--build-command' '--from-configuration' '--makeflags-jobs' '--no-makeflags-jobs' '--mirror' '--multilib' '--no-multilib' '--packager' '--repository' '--sign-key' '--sign-target' '--web-port' '--web-unix-socket') _shtab_ahriman_init_option_strings=('-h' '--help' '--build-as-user' '--build-command' '--from-configuration' '--makeflags-jobs' '--no-makeflags-jobs' '--mirror' '--multilib' '--no-multilib' '--packager' '--repository' '--sign-key' '--sign-target' '--web-port' '--web-unix-socket') _shtab_ahriman_repo_init_option_strings=('-h' '--help' '--build-as-user' '--build-command' '--from-configuration' '--makeflags-jobs' '--no-makeflags-jobs' '--mirror' '--multilib' '--no-multilib' '--packager' '--repository' '--sign-key' '--sign-target' '--web-port' '--web-unix-socket') _shtab_ahriman_repo_setup_option_strings=('-h' '--help' '--build-as-user' '--build-command' '--from-configuration' '--makeflags-jobs' '--no-makeflags-jobs' '--mirror' '--multilib' '--no-multilib' '--packager' '--repository' '--sign-key' '--sign-target' '--web-port' '--web-unix-socket') _shtab_ahriman_setup_option_strings=('-h' '--help' '--build-as-user' '--build-command' '--from-configuration' '--makeflags-jobs' '--no-makeflags-jobs' '--mirror' '--multilib' '--no-multilib' '--packager' '--repository' '--sign-key' '--sign-target' '--web-port' '--web-unix-socket') _shtab_ahriman_service_shell_option_strings=('-h' '--help') _shtab_ahriman_shell_option_strings=('-h' '--help') _shtab_ahriman_user_add_option_strings=('-h' '--help' '--key' '--packager' '-p' '--password' '-r' '--role' '-s' '--secure') _shtab_ahriman_user_list_option_strings=('-h' '--help' '-e' '--exit-code' '-r' '--role') _shtab_ahriman_user_remove_option_strings=('-h' '--help') _shtab_ahriman_web_option_strings=('-h' '--help') _shtab_ahriman_pos_0_choices=('aur-search' 'search' 'help' 'help-commands-unsafe' 'help-updates' 'help-version' 'version' 'package-add' 'add' 'package-update' 'package-remove' 'remove' 'package-status' 'status' 'package-status-remove' 'package-status-update' 'status-update' 'patch-add' 'patch-list' 'patch-remove' 'patch-set-add' 'repo-backup' 'repo-check' 'check' 'repo-create-keyring' 'repo-create-mirrorlist' 'repo-daemon' 'daemon' 'repo-rebuild' 'rebuild' 'repo-remove-unknown' 'remove-unknown' 'repo-report' 'report' 'repo-restore' 'repo-sign' 'sign' 'repo-status-update' 'repo-sync' 'sync' 'repo-tree' 'repo-triggers' 'repo-update' 'update' 'service-clean' 'clean' 'repo-clean' 'service-config' 'config' 'repo-config' 'service-config-validate' 'config-validate' 'repo-config-validate' 'service-key-import' 'key-import' 'service-setup' 'init' 'repo-init' 'repo-setup' 'setup' 'service-shell' 'shell' 'user-add' 'user-list' 'user-remove' 'web') _shtab_ahriman___log_handler_choices=('console' 'syslog' 'journald') _shtab_ahriman_aur_search___sort_by_choices=('description' 'first_submitted' 'id' 'last_modified' 'maintainer' 'name' 'num_votes' 'out_of_date' 'package_base' 'package_base_id' 'popularity' 'repository' 'submitter' 'url' 'url_path' 'version') _shtab_ahriman_search___sort_by_choices=('description' 'first_submitted' 'id' 'last_modified' 'maintainer' 'name' 'num_votes' 'out_of_date' 'package_base' 'package_base_id' 'popularity' 'repository' 'submitter' 'url' 'url_path' 'version') _shtab_ahriman_package_add__s_choices=('auto' 'archive' 'aur' 'directory' 'local' 'remote' 'repository') _shtab_ahriman_package_add___source_choices=('auto' 'archive' 'aur' 'directory' 'local' 'remote' 'repository') _shtab_ahriman_add__s_choices=('auto' 'archive' 'aur' 'directory' 'local' 'remote' 'repository') _shtab_ahriman_add___source_choices=('auto' 'archive' 'aur' 'directory' 'local' 'remote' 'repository') _shtab_ahriman_package_update__s_choices=('auto' 'archive' 'aur' 'directory' 'local' 'remote' 'repository') _shtab_ahriman_package_update___source_choices=('auto' 'archive' 'aur' 'directory' 'local' 'remote' 'repository') _shtab_ahriman_package_status__s_choices=('unknown' 'pending' 'building' 'failed' 'success') _shtab_ahriman_package_status___status_choices=('unknown' 'pending' 'building' 'failed' 'success') _shtab_ahriman_status__s_choices=('unknown' 'pending' 'building' 'failed' 'success') _shtab_ahriman_status___status_choices=('unknown' 'pending' 'building' 'failed' 'success') _shtab_ahriman_package_status_update__s_choices=('unknown' 'pending' 'building' 'failed' 'success') _shtab_ahriman_package_status_update___status_choices=('unknown' 'pending' 'building' 'failed' 'success') _shtab_ahriman_status_update__s_choices=('unknown' 'pending' 'building' 'failed' 'success') _shtab_ahriman_status_update___status_choices=('unknown' 'pending' 'building' 'failed' 'success') _shtab_ahriman_repo_rebuild__s_choices=('unknown' 'pending' 'building' 'failed' 'success') _shtab_ahriman_repo_rebuild___status_choices=('unknown' 'pending' 'building' 'failed' 'success') _shtab_ahriman_rebuild__s_choices=('unknown' 'pending' 'building' 'failed' 'success') _shtab_ahriman_rebuild___status_choices=('unknown' 'pending' 'building' 'failed' 'success') _shtab_ahriman_repo_status_update__s_choices=('unknown' 'pending' 'building' 'failed' 'success') _shtab_ahriman_repo_status_update___status_choices=('unknown' 'pending' 'building' 'failed' 'success') _shtab_ahriman_service_setup___sign_target_choices=('disabled' 'packages' 'repository') _shtab_ahriman_init___sign_target_choices=('disabled' 'packages' 'repository') _shtab_ahriman_repo_init___sign_target_choices=('disabled' 'packages' 'repository') _shtab_ahriman_repo_setup___sign_target_choices=('disabled' 'packages' 'repository') _shtab_ahriman_setup___sign_target_choices=('disabled' 'packages' 'repository') _shtab_ahriman_user_add__r_choices=('unauthorized' 'read' 'reporter' 'full') _shtab_ahriman_user_add___role_choices=('unauthorized' 'read' 'reporter' 'full') _shtab_ahriman_user_list__r_choices=('unauthorized' 'read' 'reporter' 'full') _shtab_ahriman_user_list___role_choices=('unauthorized' 'read' 'reporter' 'full') _shtab_ahriman_pos_0_nargs=A... _shtab_ahriman__h_nargs=0 _shtab_ahriman___help_nargs=0 _shtab_ahriman___force_nargs=0 _shtab_ahriman___report_nargs=0 _shtab_ahriman___no_report_nargs=0 _shtab_ahriman__q_nargs=0 _shtab_ahriman___quiet_nargs=0 _shtab_ahriman___unsafe_nargs=0 _shtab_ahriman__V_nargs=0 _shtab_ahriman___version_nargs=0 _shtab_ahriman_aur_search_pos_0_nargs=+ _shtab_ahriman_aur_search__h_nargs=0 _shtab_ahriman_aur_search___help_nargs=0 _shtab_ahriman_aur_search__e_nargs=0 _shtab_ahriman_aur_search___exit_code_nargs=0 _shtab_ahriman_aur_search___info_nargs=0 _shtab_ahriman_aur_search___no_info_nargs=0 _shtab_ahriman_search_pos_0_nargs=+ _shtab_ahriman_search__h_nargs=0 _shtab_ahriman_search___help_nargs=0 _shtab_ahriman_search__e_nargs=0 _shtab_ahriman_search___exit_code_nargs=0 _shtab_ahriman_search___info_nargs=0 _shtab_ahriman_search___no_info_nargs=0 _shtab_ahriman_help__h_nargs=0 _shtab_ahriman_help___help_nargs=0 _shtab_ahriman_help_commands_unsafe_pos_0_nargs=* _shtab_ahriman_help_commands_unsafe__h_nargs=0 _shtab_ahriman_help_commands_unsafe___help_nargs=0 _shtab_ahriman_help_updates__h_nargs=0 _shtab_ahriman_help_updates___help_nargs=0 _shtab_ahriman_help_updates__e_nargs=0 _shtab_ahriman_help_updates___exit_code_nargs=0 _shtab_ahriman_help_version__h_nargs=0 _shtab_ahriman_help_version___help_nargs=0 _shtab_ahriman_version__h_nargs=0 _shtab_ahriman_version___help_nargs=0 _shtab_ahriman_package_add_pos_0_nargs=+ _shtab_ahriman_package_add__h_nargs=0 _shtab_ahriman_package_add___help_nargs=0 _shtab_ahriman_package_add___dependencies_nargs=0 _shtab_ahriman_package_add___no_dependencies_nargs=0 _shtab_ahriman_package_add__e_nargs=0 _shtab_ahriman_package_add___exit_code_nargs=0 _shtab_ahriman_package_add__n_nargs=0 _shtab_ahriman_package_add___now_nargs=0 _shtab_ahriman_package_add__y_nargs=0 _shtab_ahriman_package_add___refresh_nargs=0 _shtab_ahriman_add_pos_0_nargs=+ _shtab_ahriman_add__h_nargs=0 _shtab_ahriman_add___help_nargs=0 _shtab_ahriman_add___dependencies_nargs=0 _shtab_ahriman_add___no_dependencies_nargs=0 _shtab_ahriman_add__e_nargs=0 _shtab_ahriman_add___exit_code_nargs=0 _shtab_ahriman_add__n_nargs=0 _shtab_ahriman_add___now_nargs=0 _shtab_ahriman_add__y_nargs=0 _shtab_ahriman_add___refresh_nargs=0 _shtab_ahriman_package_update_pos_0_nargs=+ _shtab_ahriman_package_update__h_nargs=0 _shtab_ahriman_package_update___help_nargs=0 _shtab_ahriman_package_update___dependencies_nargs=0 _shtab_ahriman_package_update___no_dependencies_nargs=0 _shtab_ahriman_package_update__e_nargs=0 _shtab_ahriman_package_update___exit_code_nargs=0 _shtab_ahriman_package_update__n_nargs=0 _shtab_ahriman_package_update___now_nargs=0 _shtab_ahriman_package_update__y_nargs=0 _shtab_ahriman_package_update___refresh_nargs=0 _shtab_ahriman_package_remove_pos_0_nargs=+ _shtab_ahriman_package_remove__h_nargs=0 _shtab_ahriman_package_remove___help_nargs=0 _shtab_ahriman_remove_pos_0_nargs=+ _shtab_ahriman_remove__h_nargs=0 _shtab_ahriman_remove___help_nargs=0 _shtab_ahriman_package_status_pos_0_nargs=* _shtab_ahriman_package_status__h_nargs=0 _shtab_ahriman_package_status___help_nargs=0 _shtab_ahriman_package_status___ahriman_nargs=0 _shtab_ahriman_package_status__e_nargs=0 _shtab_ahriman_package_status___exit_code_nargs=0 _shtab_ahriman_package_status___info_nargs=0 _shtab_ahriman_package_status___no_info_nargs=0 _shtab_ahriman_status_pos_0_nargs=* _shtab_ahriman_status__h_nargs=0 _shtab_ahriman_status___help_nargs=0 _shtab_ahriman_status___ahriman_nargs=0 _shtab_ahriman_status__e_nargs=0 _shtab_ahriman_status___exit_code_nargs=0 _shtab_ahriman_status___info_nargs=0 _shtab_ahriman_status___no_info_nargs=0 _shtab_ahriman_package_status_remove_pos_0_nargs=+ _shtab_ahriman_package_status_remove__h_nargs=0 _shtab_ahriman_package_status_remove___help_nargs=0 _shtab_ahriman_package_status_update_pos_0_nargs=* _shtab_ahriman_package_status_update__h_nargs=0 _shtab_ahriman_package_status_update___help_nargs=0 _shtab_ahriman_status_update_pos_0_nargs=* _shtab_ahriman_status_update__h_nargs=0 _shtab_ahriman_status_update___help_nargs=0 _shtab_ahriman_patch_add__h_nargs=0 _shtab_ahriman_patch_add___help_nargs=0 _shtab_ahriman_patch_list__h_nargs=0 _shtab_ahriman_patch_list___help_nargs=0 _shtab_ahriman_patch_list__e_nargs=0 _shtab_ahriman_patch_list___exit_code_nargs=0 _shtab_ahriman_patch_remove__h_nargs=0 _shtab_ahriman_patch_remove___help_nargs=0 _shtab_ahriman_patch_set_add__h_nargs=0 _shtab_ahriman_patch_set_add___help_nargs=0 _shtab_ahriman_repo_backup__h_nargs=0 _shtab_ahriman_repo_backup___help_nargs=0 _shtab_ahriman_repo_check_pos_0_nargs=* _shtab_ahriman_repo_check__h_nargs=0 _shtab_ahriman_repo_check___help_nargs=0 _shtab_ahriman_repo_check__e_nargs=0 _shtab_ahriman_repo_check___exit_code_nargs=0 _shtab_ahriman_repo_check___vcs_nargs=0 _shtab_ahriman_repo_check___no_vcs_nargs=0 _shtab_ahriman_repo_check__y_nargs=0 _shtab_ahriman_repo_check___refresh_nargs=0 _shtab_ahriman_check_pos_0_nargs=* _shtab_ahriman_check__h_nargs=0 _shtab_ahriman_check___help_nargs=0 _shtab_ahriman_check__e_nargs=0 _shtab_ahriman_check___exit_code_nargs=0 _shtab_ahriman_check___vcs_nargs=0 _shtab_ahriman_check___no_vcs_nargs=0 _shtab_ahriman_check__y_nargs=0 _shtab_ahriman_check___refresh_nargs=0 _shtab_ahriman_repo_create_keyring__h_nargs=0 _shtab_ahriman_repo_create_keyring___help_nargs=0 _shtab_ahriman_repo_create_mirrorlist__h_nargs=0 _shtab_ahriman_repo_create_mirrorlist___help_nargs=0 _shtab_ahriman_repo_daemon__h_nargs=0 _shtab_ahriman_repo_daemon___help_nargs=0 _shtab_ahriman_repo_daemon___aur_nargs=0 _shtab_ahriman_repo_daemon___no_aur_nargs=0 _shtab_ahriman_repo_daemon___dependencies_nargs=0 _shtab_ahriman_repo_daemon___no_dependencies_nargs=0 _shtab_ahriman_repo_daemon___local_nargs=0 _shtab_ahriman_repo_daemon___no_local_nargs=0 _shtab_ahriman_repo_daemon___manual_nargs=0 _shtab_ahriman_repo_daemon___no_manual_nargs=0 _shtab_ahriman_repo_daemon___vcs_nargs=0 _shtab_ahriman_repo_daemon___no_vcs_nargs=0 _shtab_ahriman_repo_daemon__y_nargs=0 _shtab_ahriman_repo_daemon___refresh_nargs=0 _shtab_ahriman_daemon__h_nargs=0 _shtab_ahriman_daemon___help_nargs=0 _shtab_ahriman_daemon___aur_nargs=0 _shtab_ahriman_daemon___no_aur_nargs=0 _shtab_ahriman_daemon___dependencies_nargs=0 _shtab_ahriman_daemon___no_dependencies_nargs=0 _shtab_ahriman_daemon___local_nargs=0 _shtab_ahriman_daemon___no_local_nargs=0 _shtab_ahriman_daemon___manual_nargs=0 _shtab_ahriman_daemon___no_manual_nargs=0 _shtab_ahriman_daemon___vcs_nargs=0 _shtab_ahriman_daemon___no_vcs_nargs=0 _shtab_ahriman_daemon__y_nargs=0 _shtab_ahriman_daemon___refresh_nargs=0 _shtab_ahriman_repo_rebuild__h_nargs=0 _shtab_ahriman_repo_rebuild___help_nargs=0 _shtab_ahriman_repo_rebuild___dry_run_nargs=0 _shtab_ahriman_repo_rebuild___from_database_nargs=0 _shtab_ahriman_repo_rebuild__e_nargs=0 _shtab_ahriman_repo_rebuild___exit_code_nargs=0 _shtab_ahriman_rebuild__h_nargs=0 _shtab_ahriman_rebuild___help_nargs=0 _shtab_ahriman_rebuild___dry_run_nargs=0 _shtab_ahriman_rebuild___from_database_nargs=0 _shtab_ahriman_rebuild__e_nargs=0 _shtab_ahriman_rebuild___exit_code_nargs=0 _shtab_ahriman_repo_remove_unknown__h_nargs=0 _shtab_ahriman_repo_remove_unknown___help_nargs=0 _shtab_ahriman_repo_remove_unknown___dry_run_nargs=0 _shtab_ahriman_remove_unknown__h_nargs=0 _shtab_ahriman_remove_unknown___help_nargs=0 _shtab_ahriman_remove_unknown___dry_run_nargs=0 _shtab_ahriman_repo_report__h_nargs=0 _shtab_ahriman_repo_report___help_nargs=0 _shtab_ahriman_report__h_nargs=0 _shtab_ahriman_report___help_nargs=0 _shtab_ahriman_repo_restore__h_nargs=0 _shtab_ahriman_repo_restore___help_nargs=0 _shtab_ahriman_repo_sign_pos_0_nargs=* _shtab_ahriman_repo_sign__h_nargs=0 _shtab_ahriman_repo_sign___help_nargs=0 _shtab_ahriman_sign_pos_0_nargs=* _shtab_ahriman_sign__h_nargs=0 _shtab_ahriman_sign___help_nargs=0 _shtab_ahriman_repo_status_update__h_nargs=0 _shtab_ahriman_repo_status_update___help_nargs=0 _shtab_ahriman_repo_sync__h_nargs=0 _shtab_ahriman_repo_sync___help_nargs=0 _shtab_ahriman_sync__h_nargs=0 _shtab_ahriman_sync___help_nargs=0 _shtab_ahriman_repo_tree__h_nargs=0 _shtab_ahriman_repo_tree___help_nargs=0 _shtab_ahriman_repo_triggers_pos_0_nargs=* _shtab_ahriman_repo_triggers__h_nargs=0 _shtab_ahriman_repo_triggers___help_nargs=0 _shtab_ahriman_repo_update_pos_0_nargs=* _shtab_ahriman_repo_update__h_nargs=0 _shtab_ahriman_repo_update___help_nargs=0 _shtab_ahriman_repo_update___aur_nargs=0 _shtab_ahriman_repo_update___no_aur_nargs=0 _shtab_ahriman_repo_update___dependencies_nargs=0 _shtab_ahriman_repo_update___no_dependencies_nargs=0 _shtab_ahriman_repo_update___dry_run_nargs=0 _shtab_ahriman_repo_update__e_nargs=0 _shtab_ahriman_repo_update___exit_code_nargs=0 _shtab_ahriman_repo_update___local_nargs=0 _shtab_ahriman_repo_update___no_local_nargs=0 _shtab_ahriman_repo_update___manual_nargs=0 _shtab_ahriman_repo_update___no_manual_nargs=0 _shtab_ahriman_repo_update___vcs_nargs=0 _shtab_ahriman_repo_update___no_vcs_nargs=0 _shtab_ahriman_repo_update__y_nargs=0 _shtab_ahriman_repo_update___refresh_nargs=0 _shtab_ahriman_update_pos_0_nargs=* _shtab_ahriman_update__h_nargs=0 _shtab_ahriman_update___help_nargs=0 _shtab_ahriman_update___aur_nargs=0 _shtab_ahriman_update___no_aur_nargs=0 _shtab_ahriman_update___dependencies_nargs=0 _shtab_ahriman_update___no_dependencies_nargs=0 _shtab_ahriman_update___dry_run_nargs=0 _shtab_ahriman_update__e_nargs=0 _shtab_ahriman_update___exit_code_nargs=0 _shtab_ahriman_update___local_nargs=0 _shtab_ahriman_update___no_local_nargs=0 _shtab_ahriman_update___manual_nargs=0 _shtab_ahriman_update___no_manual_nargs=0 _shtab_ahriman_update___vcs_nargs=0 _shtab_ahriman_update___no_vcs_nargs=0 _shtab_ahriman_update__y_nargs=0 _shtab_ahriman_update___refresh_nargs=0 _shtab_ahriman_service_clean__h_nargs=0 _shtab_ahriman_service_clean___help_nargs=0 _shtab_ahriman_service_clean___cache_nargs=0 _shtab_ahriman_service_clean___no_cache_nargs=0 _shtab_ahriman_service_clean___chroot_nargs=0 _shtab_ahriman_service_clean___no_chroot_nargs=0 _shtab_ahriman_service_clean___manual_nargs=0 _shtab_ahriman_service_clean___no_manual_nargs=0 _shtab_ahriman_service_clean___packages_nargs=0 _shtab_ahriman_service_clean___no_packages_nargs=0 _shtab_ahriman_service_clean___pacman_nargs=0 _shtab_ahriman_service_clean___no_pacman_nargs=0 _shtab_ahriman_clean__h_nargs=0 _shtab_ahriman_clean___help_nargs=0 _shtab_ahriman_clean___cache_nargs=0 _shtab_ahriman_clean___no_cache_nargs=0 _shtab_ahriman_clean___chroot_nargs=0 _shtab_ahriman_clean___no_chroot_nargs=0 _shtab_ahriman_clean___manual_nargs=0 _shtab_ahriman_clean___no_manual_nargs=0 _shtab_ahriman_clean___packages_nargs=0 _shtab_ahriman_clean___no_packages_nargs=0 _shtab_ahriman_clean___pacman_nargs=0 _shtab_ahriman_clean___no_pacman_nargs=0 _shtab_ahriman_repo_clean__h_nargs=0 _shtab_ahriman_repo_clean___help_nargs=0 _shtab_ahriman_repo_clean___cache_nargs=0 _shtab_ahriman_repo_clean___no_cache_nargs=0 _shtab_ahriman_repo_clean___chroot_nargs=0 _shtab_ahriman_repo_clean___no_chroot_nargs=0 _shtab_ahriman_repo_clean___manual_nargs=0 _shtab_ahriman_repo_clean___no_manual_nargs=0 _shtab_ahriman_repo_clean___packages_nargs=0 _shtab_ahriman_repo_clean___no_packages_nargs=0 _shtab_ahriman_repo_clean___pacman_nargs=0 _shtab_ahriman_repo_clean___no_pacman_nargs=0 _shtab_ahriman_service_config__h_nargs=0 _shtab_ahriman_service_config___help_nargs=0 _shtab_ahriman_service_config___secure_nargs=0 _shtab_ahriman_service_config___no_secure_nargs=0 _shtab_ahriman_config__h_nargs=0 _shtab_ahriman_config___help_nargs=0 _shtab_ahriman_config___secure_nargs=0 _shtab_ahriman_config___no_secure_nargs=0 _shtab_ahriman_repo_config__h_nargs=0 _shtab_ahriman_repo_config___help_nargs=0 _shtab_ahriman_repo_config___secure_nargs=0 _shtab_ahriman_repo_config___no_secure_nargs=0 _shtab_ahriman_service_config_validate__h_nargs=0 _shtab_ahriman_service_config_validate___help_nargs=0 _shtab_ahriman_service_config_validate__e_nargs=0 _shtab_ahriman_service_config_validate___exit_code_nargs=0 _shtab_ahriman_config_validate__h_nargs=0 _shtab_ahriman_config_validate___help_nargs=0 _shtab_ahriman_config_validate__e_nargs=0 _shtab_ahriman_config_validate___exit_code_nargs=0 _shtab_ahriman_repo_config_validate__h_nargs=0 _shtab_ahriman_repo_config_validate___help_nargs=0 _shtab_ahriman_repo_config_validate__e_nargs=0 _shtab_ahriman_repo_config_validate___exit_code_nargs=0 _shtab_ahriman_service_key_import__h_nargs=0 _shtab_ahriman_service_key_import___help_nargs=0 _shtab_ahriman_key_import__h_nargs=0 _shtab_ahriman_key_import___help_nargs=0 _shtab_ahriman_service_setup__h_nargs=0 _shtab_ahriman_service_setup___help_nargs=0 _shtab_ahriman_service_setup___makeflags_jobs_nargs=0 _shtab_ahriman_service_setup___no_makeflags_jobs_nargs=0 _shtab_ahriman_service_setup___multilib_nargs=0 _shtab_ahriman_service_setup___no_multilib_nargs=0 _shtab_ahriman_init__h_nargs=0 _shtab_ahriman_init___help_nargs=0 _shtab_ahriman_init___makeflags_jobs_nargs=0 _shtab_ahriman_init___no_makeflags_jobs_nargs=0 _shtab_ahriman_init___multilib_nargs=0 _shtab_ahriman_init___no_multilib_nargs=0 _shtab_ahriman_repo_init__h_nargs=0 _shtab_ahriman_repo_init___help_nargs=0 _shtab_ahriman_repo_init___makeflags_jobs_nargs=0 _shtab_ahriman_repo_init___no_makeflags_jobs_nargs=0 _shtab_ahriman_repo_init___multilib_nargs=0 _shtab_ahriman_repo_init___no_multilib_nargs=0 _shtab_ahriman_repo_setup__h_nargs=0 _shtab_ahriman_repo_setup___help_nargs=0 _shtab_ahriman_repo_setup___makeflags_jobs_nargs=0 _shtab_ahriman_repo_setup___no_makeflags_jobs_nargs=0 _shtab_ahriman_repo_setup___multilib_nargs=0 _shtab_ahriman_repo_setup___no_multilib_nargs=0 _shtab_ahriman_setup__h_nargs=0 _shtab_ahriman_setup___help_nargs=0 _shtab_ahriman_setup___makeflags_jobs_nargs=0 _shtab_ahriman_setup___no_makeflags_jobs_nargs=0 _shtab_ahriman_setup___multilib_nargs=0 _shtab_ahriman_setup___no_multilib_nargs=0 _shtab_ahriman_service_shell__h_nargs=0 _shtab_ahriman_service_shell___help_nargs=0 _shtab_ahriman_service_shell__v_nargs=0 _shtab_ahriman_service_shell___verbose_nargs=0 _shtab_ahriman_shell__h_nargs=0 _shtab_ahriman_shell___help_nargs=0 _shtab_ahriman_shell__v_nargs=0 _shtab_ahriman_shell___verbose_nargs=0 _shtab_ahriman_user_add__h_nargs=0 _shtab_ahriman_user_add___help_nargs=0 _shtab_ahriman_user_add__s_nargs=0 _shtab_ahriman_user_add___secure_nargs=0 _shtab_ahriman_user_list__h_nargs=0 _shtab_ahriman_user_list___help_nargs=0 _shtab_ahriman_user_list__e_nargs=0 _shtab_ahriman_user_list___exit_code_nargs=0 _shtab_ahriman_user_remove__h_nargs=0 _shtab_ahriman_user_remove___help_nargs=0 _shtab_ahriman_web__h_nargs=0 _shtab_ahriman_web___help_nargs=0 # $1=COMP_WORDS[1] _shtab_compgen_files() { compgen -f -- $1 # files } # $1=COMP_WORDS[1] _shtab_compgen_dirs() { compgen -d -- $1 # recurse into subdirs } # $1=COMP_WORDS[1] _shtab_replace_nonword() { echo "${1//[^[:word:]]/_}" } # set default values (called for the initial parser & any subparsers) _set_parser_defaults() { local subparsers_var="${prefix}_subparsers[@]" sub_parsers=${!subparsers_var} local current_option_strings_var="${prefix}_option_strings[@]" current_option_strings=${!current_option_strings_var} completed_positional_actions=0 _set_new_action "pos_${completed_positional_actions}" true } # $1=action identifier # $2=positional action (bool) # set all identifiers for an action's parameters _set_new_action() { current_action="${prefix}_$(_shtab_replace_nonword $1)" local current_action_compgen_var=${current_action}_COMPGEN current_action_compgen="${!current_action_compgen_var}" local current_action_choices_var="${current_action}_choices[@]" current_action_choices="${!current_action_choices_var}" local current_action_nargs_var="${current_action}_nargs" if [ -n "${!current_action_nargs_var}" ]; then current_action_nargs="${!current_action_nargs_var}" else current_action_nargs=1 fi current_action_args_start_index=$(( $word_index + 1 )) current_action_is_positional=$2 } # Notes: # `COMPREPLY`: what will be rendered after completion is triggered # `completing_word`: currently typed word to generate completions for # `${!var}`: evaluates the content of `var` and expand its content as a variable # hello="world" # x="hello" # ${!x} -> ${hello} -> "world" _shtab_ahriman() { local completing_word="${COMP_WORDS[COMP_CWORD]}" COMPREPLY=() prefix=_shtab_ahriman word_index=0 _set_parser_defaults word_index=1 # determine what arguments are appropriate for the current state # of the arg parser while [ $word_index -ne $COMP_CWORD ]; do local this_word="${COMP_WORDS[$word_index]}" if [[ -n $sub_parsers && " ${sub_parsers[@]} " =~ " ${this_word} " ]]; then # valid subcommand: add it to the prefix & reset the current action prefix="${prefix}_$(_shtab_replace_nonword $this_word)" _set_parser_defaults fi if [[ " ${current_option_strings[@]} " =~ " ${this_word} " ]]; then # a new action should be acquired (due to recognised option string or # no more input expected from current action); # the next positional action can fill in here _set_new_action $this_word false fi if [[ "$current_action_nargs" != "*" ]] && \ [[ "$current_action_nargs" != "+" ]] && \ [[ "$current_action_nargs" != *"..." ]] && \ (( $word_index + 1 - $current_action_args_start_index >= \ $current_action_nargs )); then $current_action_is_positional && let "completed_positional_actions += 1" _set_new_action "pos_${completed_positional_actions}" true fi let "word_index+=1" done # Generate the completions if [[ "${completing_word}" == -* ]]; then # optional argument started: use option strings COMPREPLY=( $(compgen -W "${current_option_strings[*]}" -- "${completing_word}") ) else # use choices & compgen local IFS=$'\n' # items may contain spaces, so delimit using newline COMPREPLY=( $([ -n "${current_action_compgen}" ] \ && "${current_action_compgen}" "${completing_word}") ) unset IFS COMPREPLY+=( $(compgen -W "${current_action_choices[*]}" -- "${completing_word}") ) fi return 0 } complete -o filenames -F _shtab_ahriman ahriman