about summary refs log tree commit diff
path: root/Completion
diff options
context:
space:
mode:
Diffstat (limited to 'Completion')
-rw-r--r--Completion/User/_bison21
-rw-r--r--Completion/User/_flex44
2 files changed, 65 insertions, 0 deletions
diff --git a/Completion/User/_bison b/Completion/User/_bison
new file mode 100644
index 000000000..000235f6f
--- /dev/null
+++ b/Completion/User/_bison
@@ -0,0 +1,21 @@
+#compdef bison
+
+_arguments -s \
+  '(--file-prefix)-b[specify output file prefix]:output file prefix:' \
+  '(--defines)-d[write token definition file]' \
+  '(--raw)-r[output bison token numbers]' \
+  '(--token-table)-k[output token table]' \
+  '(--no-lines)-l[don'"'"'t generate #line directives]' \
+  '(--no-parser)-n[don'"'"'t generate parse (only declarations)]' \
+  '(--output-file)-o[specify parser output file name]:parser file name:_files' \
+  '(--name-prefix)-p[change yy prefix]:prefix string:' \
+  '(--debug)-t[output YYDEBUG definition]' \
+  '(--verbose)-v[verbose mode]' \
+  '(--version)-V[show version]' \
+  '(--help)-h[show help]' \
+  '(--yacc --fixed-output-file)-y[imitate yacc'"'"'s output file convention]' \
+  ':input file:_files -g \*.\(\#i\)\(bison\|yacc\)' \
+  -- \
+  '*=outfile:parser file name:_files' \
+  '*file-prefix=prefix:output file prefix:' \
+  '*name-prefix=prefix:prefix string:'
diff --git a/Completion/User/_flex b/Completion/User/_flex
new file mode 100644
index 000000000..c63d0d2da
--- /dev/null
+++ b/Completion/User/_flex
@@ -0,0 +1,44 @@
+#compdef flex
+
+local state line ret=1
+typeset -A options
+
+_arguments -s \
+  --help --version \
+  '-b[generate backing-up information]' \
+  '-d[make scanner running in debug mode]' \
+  '-f[generate fast scanner (full table)]' \
+  '-h[show help]' \
+  '-i[generate case-insensitive scanner]' \
+  '-l[maximum compatibility with lex]' \
+  '-p[generate performance report]' \
+  '-s[suppress default rule]' \
+  '-t[write scanner to stdout]' \
+  '-v[show summary of statistics about scanner]' \
+  '-w[suppress warnings]' \
+  '-B[generate batch scanner]' \
+  '-F[use fast scanner table representation]' \
+  '-I[generate interactive scanner]' \
+  '-L[don'"'"'t generate #line directives]' \
+  '-T[trace mode]' \
+  '-V[show version]' \
+  '-7[generate 7-bit scanner]' \
+  '-8[generate 8-bit scanner]' \
+  '-+[generate C++ scanner class]' \
+  '-C-[specify degree of table compression]:table compression:->tabcomp' \
+  '-o-[specify output file]:output file:_files' \
+  '-P-[change yy prefix]:prefix string:' \
+  '-S-[override skeleton file]:skeleton file:_files' \
+  '*:input files:_files -g \*.\(\#i\)\(f\|\)lex' && ret=0
+
+if [[ -n "$state" ]]; then
+  _values -s '' 'table compression' \
+    'a[align tables]' \
+    'e[construct equivalence classes]' \
+    '(m)f[generate full tables]' \
+    '(m)F[generate fast tables]' \
+    '(f F)m[construct meta-equivalence classes]' \
+    'r[don'"'"'t use stdio library]' && ret=0
+fi
+
+return ret