From ab7ec8d9851fea8230e1ccfba284c5bfaf457d88 Mon Sep 17 00:00:00 2001 From: Oliver Kiddle Date: Sun, 3 May 2015 16:53:47 +0200 Subject: 35011: update completions for some common Unix commands, in particular improving FreeBSD support --- Completion/Unix/Command/_elfdump | 47 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 Completion/Unix/Command/_elfdump (limited to 'Completion/Unix/Command/_elfdump') diff --git a/Completion/Unix/Command/_elfdump b/Completion/Unix/Command/_elfdump new file mode 100644 index 000000000..ee92402d2 --- /dev/null +++ b/Completion/Unix/Command/_elfdump @@ -0,0 +1,47 @@ +#compdef elfdump + +local -a args + +_elf_file() { + [[ -x $REPLY || $REPLY = (core*|*.([ao]|so|elf)) ]] +} + +args=( + '-c[dump section header information]' + '-d[dump .dynamic section]' + '-e[dump file header]' + '-G[dump .got (global offset table) section]' + '-h[dump .hash section]' + '-i[dump .interp (interpreter) section]' + '-n[dump .note sections]' + '(-w)-p[dump program headers]' + '-r[dump relocation sections]' + '-s[dump symbol table sections]' + '(-p)-w[write contents of matched sections to file]:file:_files' +) + +case $OSTYPE in + solaris*) + args+=( + '-g[dump .group section]' + '-H[dump .SUNW_cap (capabilities) section]' + '-m[dump .SUNW_move section]' + '-S[dump symbol table sections sorted according to symbol sort sections]' + '-u[dump stack unwind/exceptions sections]' + '-v[dump .SUNW_version (versioning) sections]' + '-y[dump .SUNW_syminfo (symbol bindings) section]' + '-I[match sections by index]:index or range' + "-N[match sections by name]:section" + '-T[match sections by type]:type' + '-C[demangle C++ symbol names]' + '-k[calculate ELF checksum]' + '-l[show long section names without truncation]' + '-O[specify osabi to apply]:osabi' + '-P[use alternative section header]' + "*:elf file:_files -g '*(-.e:_elf_file:)'" + ) + ;; + freebsd*) args+=( '-a[dump all information]' ) ;; +esac + +_arguments -s $args -- cgit 1.4.1