fish-shell/share/completions/xdg-mime.fish
Johannes Altmanninger 47b0d0c293 Make __fish_is_nth_token and __fish_nth_token private again
Their names are not perfect, so let's keep them as internal functions,
until we figure out how/if we want to expose this.

This reverts 0445126c2 (Undunder __fish_is_nth_token, 2021-06-29) (but I
did it without "git revert").

Closes #8008
2022-02-13 10:45:38 +01:00

34 lines
2.1 KiB
Fish

function __fish_print_xdg_desktop_file_ids --description 'Print all available xdg desktop file IDs'
find (__fish_print_xdg_applications_directories) -name \*.desktop \( -type f -or -type l \) -printf '%P\n' | tr / - | sort -u
end
# main completion
complete -c xdg-mime -n 'not __fish_seen_subcommand_from query default install uninstall' -xa 'query default install uninstall'
# complete xdg-mime query
complete -c xdg-mime -n '__fish_seen_subcommand_from query; and not __fish_seen_subcommand_from filetype default' -xa 'filetype default' -d 'Query information'
# complete xdg-mime query default
complete -c xdg-mime -d 'Query default application for type' -n 'contains_seq query default -- (commandline -cop)' -xa '(__fish_print_xdg_mimetypes)'
# complete xdg-mime query filetype
complete -c xdg-mime -d 'Query file\'s filetype' -n 'contains_seq query filetype -- (commandline -cop)' -r
# complete xdg-mime default
complete -c xdg-mime -d 'Choose application' -n '__fish_seen_subcommand_from default; and __fish_is_nth_token 3' -xa '(__fish_print_xdg_desktop_file_ids)'
complete -c xdg-mime -d Mimetype -n '__fish_seen_subcommand_from default; and __fish_is_nth_token 4' -xa '(__fish_print_xdg_mimetypes)'
# complete xdg-mime install
complete -c xdg-mime -d 'Add filetype description' -n 'contains_seq xdg-mime install -- (commandline -cop)' -r
complete -c xdg-mime -d 'Set mode' -n 'contains_seq xdg-mime install -- (commandline -cop)' -l mode -xa 'user system'
complete -c xdg-mime -d 'Disable vendor check' -n 'contains_seq xdg-mime install -- (commandline -cop)' -l novendor
# complete xdg-mime uninstall
complete -c xdg-mime -d 'Remove filetype description' -n 'contains_seq xdg-mime uninstall -- (commandline -cop)' -r
complete -c xdg-mime -d 'Set mode' -n 'contains_seq xdg-mime uninstall -- (commandline -cop)' -l mode -xa 'user system'
#complete -c xdg-mime install [--mode mode] [--novendor] mimetypes-file
#complete -c xdg-mime uninstall [--mode mode] mimetypes-file
complete -c xdg-mime -l help -d 'Display help'
complete -c xdg-mime -l manual -d 'Diplay long help'
complete -c xdg-mime -l version -d 'Print version'