#!/bin/bash # mfm Bash completion script _mfm() { local cur prev opts COMPREPLY=() cur="${COMP_WORDS[COMP_CWORD]}" prev="${COMP_WORDS[COMP_CWORD-1]}" # Options globales pour 'mfm' local mfm_global_opts="-c --config -v --verbose -o --open --version -h --help" # Commandes pour 'mfm' local mfm_cmds="config mapping completion" # Options pour 'config' et 'mapping' local config_opts="init" local mapping_opts="list create edit mount umount delete" # Ajouter les options globales à chaque cas case "${prev}" in mfm) COMPREPLY=($(compgen -W "${mfm_cmds} ${mfm_global_opts}" -- ${cur})) return 0 ;; config) COMPREPLY=($(compgen -W "${config_opts} ${mfm_global_opts}" -- ${cur})) return 0 ;; mapping) COMPREPLY=($(compgen -W "${mapping_opts} ${mfm_global_opts}" -- ${cur})) return 0 ;; *) if [[ ${cur} == -* ]]; then COMPREPLY=($(compgen -W "${mfm_global_opts}" -- ${cur})) fi return 0 ;; esac } # Appliquer la complétion à la fonction 'mfm' complete -F _mfm mfm