diff options
author | Jun-ichi Takimoto <takimoto-j@kba.biglobe.ne.jp> | 2018-03-22 12:53:40 +0900 |
---|---|---|
committer | Jun-ichi Takimoto <takimoto-j@kba.biglobe.ne.jp> | 2018-03-22 12:53:40 +0900 |
commit | fc37d15e3e102ecba8fcdf38f389843fcab11065 (patch) | |
tree | 746a756aaae5b1f7d06d6a27a9b24fdc7fe6a756 /Completion/Darwin | |
parent | bc349023aa6c0204d3242cb97f395c8f20289c69 (diff) | |
download | zsh-fc37d15e3e102ecba8fcdf38f389843fcab11065.tar.gz zsh-fc37d15e3e102ecba8fcdf38f389843fcab11065.tar.xz zsh-fc37d15e3e102ecba8fcdf38f389843fcab11065.zip |
42191: new completion for otool (macOS)
Diffstat (limited to 'Completion/Darwin')
-rw-r--r-- | Completion/Darwin/Command/_otool | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/Completion/Darwin/Command/_otool b/Completion/Darwin/Command/_otool new file mode 100644 index 000000000..8c6c00867 --- /dev/null +++ b/Completion/Darwin/Command/_otool @@ -0,0 +1,47 @@ +#compdef otool llvm-otool +# +local opts args files variant curcontext=$context state state_descr line +typeset -A opt_args + +_arguments \ + '-a[display the archive header]' \ + '-S[display the contents of the __.SYMDEF file]' \ + '-f[display the universal headers]' \ + '-h[display the Mach header]' \ + '-l[display the load commands]' \ + '-L[display names and versions of shared libs that the object file uses]' \ + '-D[display just the internal name of shared lib]' \ + '-s[display the contents of the specified section]:segment name: :section name: ' \ + '-t[display the contents of (__TEXT,__text) section]' \ + '-d[display the contents of (__DATA,__data) section]' \ + '-o[display the contents of __OBJC segment]' \ + '-r[display the relocation entries]' \ + '-c[display the argument strings from a core file]' \ + '-I[display the indirect symbol table]' \ + '-T[display the table of contents for a dynamic shared library]' \ + '-R[display the reference table of a dynamic shared library]' \ + '-M[display the module table of dymamic shared library]' \ + '-H[display the two-level namespace hints table]' \ + '-G[display the data in code table]' \ + '-C[display the linker optimization hints]' \ + '-P[print the info_plist section as strings]' \ + '-p[with -t and -v/V: start disassembly from the specified symbol]:symbol name: ' \ + '-v[display verbosely (symbolically) when possible]' \ + '-V[display disassembled operands symbolically]' \ + "-X[don't print leading addresses/headers with disassembly]" \ + '-q[use the llvm disassembler (default)]' \ + '-mcpu=[use the specified cpu for the llvm disassembler]:target:->targets' \ + '-function_offsets[with disassembly, print decimal offset from the last label]' \ + '-j[with disassembly, print opcode bytes]' \ + "-Q[use otool's disassembler]" \ + '-arch[select the specified architecture from a universal file]:arch:(i386 x86_64)' \ + '-m[object file names are not assuemd to be in archive(member) syntax]' \ + '(- *)--version[print version of otool]' \ + '*:file:_object_files' && return 0 + +case $state in + targets) + _values "target architecture" "${(z)${(@)${(f)$(_call_program targets + ${~words[1]} --version 2>/dev/null)##*Registered Targets:}/ -*}}" + ;; +esac |