Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Completion for aplay from alsa-utils



Hello,
the submitted completion is in file _alsa-utils and covers:
- all options of the aplay command, with the =-type options correctly recognized,
- exclusion lists for the options,
- _file completion for *:… arguments.

--
From 087505538427f58bac1cc8bde90e95614063f206 Mon Sep 17 00:00:00 2001
From: Sebastian Gniazdowski <sgniazdowski@xxxxxxxxx>
Date: Tue, 29 Oct 2019 18:59:46 +0100
Subject: [PATCH] Completion for aplay from alsa-utils

---
 Completion/Linux/Command/_alsa-utils | 54 ++++++++++++++++++++++++++++
 1 file changed, 54 insertions(+)
 create mode 100644 Completion/Linux/Command/_alsa-utils

diff --git a/Completion/Linux/Command/_alsa-utils b/Completion/Linux/Command/_alsa-utils
new file mode 100644
index 000000000..e8356b95a
--- /dev/null
+++ b/Completion/Linux/Command/_alsa-utils
@@ -0,0 +1,54 @@
+#compdef aplay
+# Copyright (c) 2019 Sebastian Gniazdowski
+
+setopt localoptions warncreateglobal typesetsilent
+
+local -a opts
+opts=(
+  + '(operation)'
+  {-h,--help}'[print help message]'
+  --version'[print current version]'
+  {-l,--list-devices}'[list all soundcards and digital audio devices]'
+  {-L,--list-pcms}'[list device names]'
+  + option
+  {-D,--device}'[select PCM by name]'
+  {-q,--quiet}'[quiet mode]'
+  {-t,--file-type}'[file type (voc, wav, raw or au)]'
+  {-c,--channels=}'[channels]'
+  {-r,--rate=}'[sample rate]'
+  {-f,--format=}'[sample format (case insensitive)]'
+  {-d,--duration=}'[interrupt after # seconds]'
+  {-s,--samples=}'[interrupt after # samples per channel]'
+  {-M,--mmap}'[mmap stream]'
+  {-N,--nonblock}'[nonblocking mode]'
+  {-F,--period-time=}'[distance between interrupts is # microseconds]'
+  {-B,--buffer-time=}'[buffer duration is # microseconds]'
+  --period-size='[distance between interrupts is # frames]'
+  --buffer-size='[buffer duration is # frames]'
+  {-A,--avail-min=}'[min available space for wakeup is # microseconds]'
+  {-R,--start-delay=}'[delay for automatic PCM start is # microseconds]'
+  {-T,--stop-delay=}'[delay for automatic PCM stop is # microseconds from xrun]'
+  {-v,--verbose}'[show PCM structure and setup (accumulative)]'
+  {-V,--vumeter=}'[enable VU meter (TYPE: mono or stereo)]'
+  {-I,--separate-channels}'[file for each channel]'
+  {-i,--interactive}'[allow interactive operation from stdin]'
+  {-m,--chmap=}'[give the channel map to override or follow]'
+  --disable-resample'[disable automatic rate resample]'
+  --disable-channels'[disable automatic channel conversions]'
+  --disable-format'[disable automatic format conversions]'
+  --disable-softvol'[disable software volume control (softvol)]'
+  --test-position'[test ring buffer position]'
+  --test-coef='[test coefficient for ring buffer position (default 8)]'
+  --test-nowait'[do not wait for ring buffer - eats whole CPU]'
+  --max-file-time='[start another output file when the old file has recorded]'
+  --process-id-file'[write the process ID here]'
+  --use-strftime'[apply the strftime facility to the output file name]'
+  --dump-hw-params'[dump hw_params of the device]'
+  --fatal-errors'[treat all errors as fatal]'
+
+  '*:sound file:_files'
+)
+
+_arguments -s $opts
+
+# The return value passes through
-- 
2.21.0



Messages sorted by: Reverse Date, Date, Thread, Author