Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE
glib2.28512
gsettings.zsh
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File gsettings.zsh of Package glib2.28512
#compdef gsettings _gsettings() { _arguments : \ '--schemadir[A directory to search for additional schemas]:additional schema:_path_files -/' \ ':gsettings command:_gsettings_commands' \ '*: :_gsettings_rest_args' } (( $+functions[_gsettings_commands] )) || _gsettings_commands() { local -a command_list command_list=( 'help:show the help' 'list-schemas:list installed schemas' 'list-relocatable-schemas:list relocatable schemas' 'list-keys:list keys in a schema' 'list-children:list children of a schema' 'list-recursively:list keys and values, recursively' 'range:queries the range of a key' 'get:get the value of a key' 'set:set the value of a key' 'reset:reset the value of a key' 'reset-recursively:reset all values in a given schema' 'writable:check if a key is writable' 'monitor:watch for changes' ) _describe -t commands 'gsettings commands' command_list } (( $+functions[_gsettings_rest_args] )) || _gsettings_rest_args() { local CMD_IDX=2 local SCHEMA_IDX=3 local KEY_IDX=4 local VALUE_IDX=5 local offset=0 local opt_schemadir schemadir cmd schema key if [[ $#words -ge 4 && "${(Q)words[2]}" == --schemadir ]]; then opt_schemadir=--schemadir schemadir="${(Q)words[3]}" offset=2 fi cmd="${(Q)words[CMD_IDX+offset]}" case $((CURRENT-offset)) in $SCHEMA_IDX) case "$cmd" in help) _gsettings_help_targets ;; list-keys|list-children|list-recursively|range|get|set|reset| \ reset-recursively|writable|monitor) _gsettings_schemas "$opt_schemadir" "$schemadir" ;; esac ;; $KEY_IDX) case "$cmd" in get|set|range|reset|writable|monitor) schema="${(Q)words[SCHEMA_IDX+offset]}" _gsettings_keys "$opt_schemadir" "$schemadir" "$schema" ;; esac ;; $VALUE_IDX) case "$cmd" in set) schema="${(Q)words[SCHEMA_IDX+offset]}" key="${(Q)words[KEY_IDX+offset]}" _gsettings_values "$opt_schemadir" "$schemadir" "$schema" "$key" ;; esac ;; esac } (( $+functions[_gsettings_help_targets] )) || _gsettings_help_targets() { local -a target_list target_list=( 'help:show the help' 'list-schemas:list installed schemas' 'list-relocatable-schemas:list relocatable schemas' 'list-keys:list keys in a schema' 'list-children:list children of a schema' 'list-recursively:list keys and values, recursively' 'range:queries the range of a key' 'get:get the value of a key' 'set:set the value of a key' 'reset:reset the value of a key' 'reset-recursively:reset all values in a given schema' 'writable:check if a key is writable' 'monitor:watch for changes' ) _describe -t help-target 'help targets' target_list } (( $+functions[_gsettings_schemas] )) || _gsettings_schemas() { local -a schema_list schema_list=( ${(@f)"$(gsettings $1 $2 list-schemas 2>/dev/null)"} ${(@f)"$(gsettings $1 $2 list-relocatable-schemas 2>/dev/null)"} ) if [[ $#schema_list == 0 ]]; then schema_list=( ${(@f)"$(gsettings list-schemas 2>/dev/null)"} ${(@f)"$(gsettings list-relocatable-schemas 2>/dev/null)"} ) fi _describe -t schemas 'schemas' schema_list -V } (( $+functions[_gsettings_keys] )) || _gsettings_keys() { local -a key_list key_list=(${(@f)"$(gsettings $1 $2 list-keys $3 2>/dev/null)"}) if [[ $#key_list == 0 ]]; then key_list=(${(@f)"$(gsettings list-keys $3 2>/dev/null)"}) fi _describe -t keys 'keys' key_list -V } # Complete possible values including bool and enum (( $+functions[_gsettings_values] )) || _gsettings_values() { local -a range range=(${(@f)"$(gsettings $1 $2 range $3 $4 2>/dev/null)"}) if [[ $#range == 0 ]]; then range=(${(@f)"$(gsettings range $3 $4 2>/dev/null)"}) fi case "$range[1]" in 'type b') _gsettings_complete_bool ;; 'enum') _gsettings_complete_enum $range[2,-1] ;; esac } (( $+functions[_gsettings_complete_bool] )) || _gsettings_complete_bool() { local -a bool_list bool_list=('true' 'false') _describe -t val-bool 'possible values (bool)' bool_list -V } (( $+functions[_gsettings_complete_enum] )) || _gsettings_complete_enum() { local -a enum_list enum_list=(${(@Q)"${@}"}) _describe -t val-enum 'possible values' enum_list -V } _gsettings
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor