Du kannst nicht mehr als 25 Themen auswählen Themen müssen entweder mit einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.

229 Zeilen
5.6 KiB

  1. # bash completion for rebar3
  2. _rebar3()
  3. {
  4. local cur prev sopts lopts cmdsnvars
  5. COMPREPLY=()
  6. cur="${COMP_WORDS[COMP_CWORD]}"
  7. prev="${COMP_WORDS[COMP_CWORD-1]}"
  8. if [[ ${prev} == rebar3 ]] ; then
  9. sopts="-h -v"
  10. lopts="--help --version"
  11. cmdsnvars=" \
  12. as \
  13. clean \
  14. compile \
  15. cover \
  16. ct \
  17. deps \
  18. dialyzer \
  19. do \
  20. edoc \
  21. escriptize \
  22. eunit \
  23. help \
  24. new \
  25. path \
  26. pkgs \
  27. plugins \
  28. release \
  29. relup \
  30. report \
  31. shell \
  32. tar \
  33. tree \
  34. unlock \
  35. unstable \
  36. update \
  37. upgrade \
  38. version \
  39. xref \
  40. "
  41. elif [[ ${prev} == as ]] ; then
  42. :
  43. elif [[ ${prev} == clean ]] ; then
  44. sopts="-a"
  45. lopts="--all"
  46. elif [[ ${prev} == compile ]] ; then
  47. :
  48. elif [[ ${prev} == cover ]] ; then
  49. sopts="-r -v"
  50. lopts="--reset --verbose"
  51. elif [[ ${prev} == ct ]] ; then
  52. sopts="-c -v"
  53. lopts=" \
  54. --dir \
  55. --suite \
  56. --group \
  57. --case \
  58. --config \
  59. --allow_user_terms \
  60. --logdir \
  61. --logopts \
  62. --verbosity \
  63. --silent_connections \
  64. --stylesheet \
  65. --cover \
  66. --repeat \
  67. --duration \
  68. --until \
  69. --force_stop \
  70. --basic_html \
  71. --stylesheet \
  72. --decrypt_key \
  73. --decrypt_file \
  74. --abort_if_missing_suites \
  75. --multiply_timetraps \
  76. --scale_timetraps \
  77. --create_priv_dir \
  78. --include \
  79. --verbose \
  80. --auto_compile \
  81. "
  82. elif [[ ${prev} == deps ]] ; then
  83. :
  84. elif [[ ${prev} == dialyzer ]] ; then
  85. sopts="-u -s"
  86. lopts="--update-plt --succ-typings"
  87. elif [[ ${prev} == do ]] ; then
  88. :
  89. elif [[ ${prev} == edoc ]] ; then
  90. :
  91. elif [[ ${prev} == escriptize ]] ; then
  92. :
  93. elif [[ ${prev} == eunit ]] ; then
  94. sopts="-c -e -v -d -f -m -s -g"
  95. lopts="--app --application --cover --dir --error_on_warning --file --module --suite --generator --verbose"
  96. elif [[ ${prev} == help ]] ; then
  97. :
  98. elif [[ ${prev} == new ]] ; then
  99. sopts="-f"
  100. lopts="--force"
  101. elif [[ ${prev} == path ]] ; then
  102. sopts="-s"
  103. lopts=" \
  104. --app \
  105. --base \
  106. --bin \
  107. --ebin \
  108. --lib \
  109. --priv \
  110. --separator \
  111. --src \
  112. --rel \
  113. "
  114. elif [[ ${prev} == pkgs ]] ; then
  115. :
  116. elif [[ ${prev} == plugins ]] ; then
  117. :
  118. elif [[ ${prev} == release ]] ; then
  119. sopts="-n -v -g -u -o -h -l -p -V -d -i -a -c -r"
  120. lopts=" \
  121. --relname \
  122. --relvsn \
  123. --goal \
  124. --upfrom \
  125. --output-dir \
  126. --help \
  127. --lib-dir \
  128. --path \
  129. --default-libs \
  130. --verbose \
  131. --dev-mode \
  132. --include-erts \
  133. --override \
  134. --config \
  135. --overlay_vars \
  136. --vm_args \
  137. --sys_config \
  138. --system_libs \
  139. --version \
  140. --root \
  141. "
  142. elif [[ ${prev} == relup ]] ; then
  143. sopts="-n -v -g -u -o -h -l -p -V -d -i -a -c -r"
  144. lopts=" \
  145. --relname \
  146. --relvsn \
  147. --goal \
  148. --upfrom \
  149. --output-dir \
  150. --help \
  151. --lib-dir \
  152. --path \
  153. --default-libs \
  154. --verbose \
  155. --dev-mode \
  156. --include-erts \
  157. --override \
  158. --config \
  159. --overlay_vars \
  160. --vm_args \
  161. --sys_config \
  162. --system_libs \
  163. --version \
  164. --root \
  165. "
  166. elif [[ ${prev} == report ]] ; then
  167. :
  168. elif [[ ${prev} == shell ]] ; then
  169. :
  170. elif [[ ${prev} == tar ]] ; then
  171. sopts="-n -v -g -u -o -h -l -p -V -d -i -a -c -r"
  172. lopts=" \
  173. --relname \
  174. --relvsn \
  175. --goal \
  176. --upfrom \
  177. --output-dir \
  178. --help \
  179. --lib-dir \
  180. --path \
  181. --default-libs \
  182. --verbose \
  183. --dev-mode \
  184. --include-erts \
  185. --override \
  186. --config \
  187. --overlay_vars \
  188. --vm_args \
  189. --sys_config \
  190. --system_libs \
  191. --version \
  192. --root \
  193. "
  194. elif [[ ${prev} == tree ]] ; then
  195. sopts="-v"
  196. lopts="--verbose"
  197. elif [[ ${prev} == unstable ]] ; then
  198. :
  199. elif [[ ${prev} == update ]] ; then
  200. :
  201. elif [[ ${prev} == upgrade ]] ; then
  202. :
  203. elif [[ ${prev} == version ]] ; then
  204. :
  205. elif [[ ${prev} == xref ]] ; then
  206. :
  207. fi
  208. COMPREPLY=( $(compgen -W "${sopts} ${lopts} ${cmdsnvars}" -- ${cur}) )
  209. if [ -n "$COMPREPLY" ] ; then
  210. # append space if matched
  211. COMPREPLY="${COMPREPLY} "
  212. # remove trailing space after equal sign
  213. COMPREPLY=${COMPREPLY/%= /=}
  214. fi
  215. return 0
  216. }
  217. complete -o nospace -F _rebar3 rebar3
  218. # Local variables:
  219. # mode: shell-script
  220. # sh-basic-offset: 4
  221. # sh-indent-comment: t
  222. # indent-tabs-mode: nil
  223. # End:
  224. # ex: ts=4 sw=4 et filetype=sh