#compdef mysqldiff local curcontext="$curcontext" state line expl typeset -A opt_args _mysqldiff () { _arguments -s \ {-h{,1,2},--host{,1,2}=}':server hostname:_mysql_hosts' \ {-p{,1,2},--password{,1,2}=}':server password: ' \ {-u{,1,2},--user{,1,2}=}':server username:_mysql_users' \ {-s{,1,2},--socket{,1,2}=}':server socket:_directories' \ {-d,--debug=}':debugging level (default 1):(1 2 3 4 5 6 7 8)' \ {-i,--tolerant}':ignore DEFAULT and formatting changes: ' \ {-k,--keep-old-tables}":don\'t output DROP TABLE commands: " \ {-n,--no-old-defs}"[don't output old defs as comments]" \ {-o,--only-both}'[only output changes for tables in both databases]' \ {-t,--table-re}':restrict comparisons to tables matching a regexp: ' \ {-A,--apply}':interactively patch database1 to match database2: ' \ {-\?,--help}'[display usage]' \ {1,2}':MySQL database:_mysql_db_or_file' } _mysql_db_or_file () { _alternative \ 'databases:MySQL databases:_mysql_databases' \ 'files:MySQL database definition files:_files -g \*.\(my\|\)sql' } _mysql_utils _mysqldiff "$@"