From: Frank Terbeck <ft@bewatermyfriend.org>
To: zsh-workers@zsh.org
Cc: Oliver Kiddle <okiddle@yahoo.co.uk>
Subject: [PATCH 1/6] _baudrate → _baudrates
Date: Sun, 8 May 2016 00:09:11 +0200 [thread overview]
Message-ID: <1462658956-11785-2-git-send-email-ft@bewatermyfriend.org> (raw)
In-Reply-To: <1462658956-11785-1-git-send-email-ft@bewatermyfriend.org>
Oliver notes that helper functions usually have plural names by
convention.
---
Completion/Unix/Type/_baudrate | 84 -----------------------------------------
Completion/Unix/Type/_baudrates | 84 +++++++++++++++++++++++++++++++++++++++++
2 files changed, 84 insertions(+), 84 deletions(-)
delete mode 100644 Completion/Unix/Type/_baudrate
create mode 100644 Completion/Unix/Type/_baudrates
diff --git a/Completion/Unix/Type/_baudrate b/Completion/Unix/Type/_baudrate
deleted file mode 100644
index c169284..0000000
--- a/Completion/Unix/Type/_baudrate
+++ /dev/null
@@ -1,84 +0,0 @@
-#autoload
-
-# Offer a list of baud-rates. Usage:
-#
-# _baudrate [OPTION(s)...]
-#
-# Available options:
-#
-# -u LIMIT Upper limit. LIMIT is the maximum value the offered list
-# will contain, if the complete list includes LIMIT exactly.
-#
-# -l LIMIT Lower limit. Like -u but for the lower boundary.
-#
-# -f FUNCTION If given FUNCION is used as a predicate to filter the
-# value in the complete list to generate an arbitrary
-# sub-set.
-#
-# -t TAG Use TAG as the tag value in _wanted call.
-#
-# -d DESC Use DESC as the description value in _wanted call.
-#
-# The default complete list of available baud rates is also configurable via
-# the 'baud-rates' style:
-#
-# zstyle ':completion:*' baud-rates 23 42 666
-#
-# It is also possible to override the arguments to -f, -u and -l via styles in
-# a similar fashion:
-#
-# zstyle ':completion:*:*:screen:*' max-baud-rate 9600
-# zstyle ':completion:*:*:screen:*' min-baud-rate 1200
-# zstyle ':completion:*:*:screen:*' baud-rate-filter some_function_name
-
-local -A opts
-local expl tag desc tmp
-local -a rates
-
-zparseopts -E -A opts u: l: f: d: t:
-
-# The following uses a generated list; first find out where the B* macros are
-# defined:
-#
-# grep -r B115200 /usr/include
-#
-# Then generate the actual list:
-#
-# sed -ne '/^[ \t]*#define[ \t]*B[0-9][0-9]*/s,^.*B\([0-9][0-9]*\).*,\1,p' \
-# < /usr/include/asm-generic/termbits.h
-#
-# This one was generated on a Debian Stretch system, leaving out the "0" rate,
-# which is synonymous to "hang-up".
-
-zstyle -a ":completion:${curcontext}:" baud-rates rates ||
- rates=( 50 75 110 134 150 200 300 600
- 1200 1800 2400 4800 9600
- 19200 38400 57600
- 115200 230400 460800 500000 576000 921600
- 1000000 1152000 1500000 2000000 2500000 3000000 3500000 4000000 )
-
-zstyle -s ":completion:${curcontext}:" max-baud-rate tmp && opts[-u]=$tmp
-zstyle -s ":completion:${curcontext}:" min-baud-rate tmp && opts[-l]=$tmp
-zstyle -s ":completion:${curcontext}:" baud-rate-filter tmp && opts[-f]=$tmp
-
-if (( ${+opts[-u]} )) || (( ${+opts[-l]} )); then
- local -i min max
- min=${opts[-l]:-0}
- max=${opts[-u]:-${${(On)rates}[1]}}
- rates=( ${(M)rates:#${~:-<$min-$max>}} )
-fi
-
-if (( ${+opts[-f]} )); then
- set -- $rates
- rates=( )
- for item; do
- ${opts[-f]} $item && rates+=( $item )
- done
-fi
-
-tag=${opts[-t]:-baud-rate}
-desc=${opts[-d]:-baud rate}
-
-# -1V removes dupes (which there shouldn't be) and otherwise leaves the
-# order in the $rates array intact.
-_wanted -1V $tag expl $desc compadd -a $expl -- rates
diff --git a/Completion/Unix/Type/_baudrates b/Completion/Unix/Type/_baudrates
new file mode 100644
index 0000000..9e87e7a
--- /dev/null
+++ b/Completion/Unix/Type/_baudrates
@@ -0,0 +1,84 @@
+#autoload
+
+# Offer a list of baud-rates. Usage:
+#
+# _baudrates [OPTION(s)...]
+#
+# Available options:
+#
+# -u LIMIT Upper limit. LIMIT is the maximum value the offered list
+# will contain, if the complete list includes LIMIT exactly.
+#
+# -l LIMIT Lower limit. Like -u but for the lower boundary.
+#
+# -f FUNCTION If given FUNCION is used as a predicate to filter the
+# value in the complete list to generate an arbitrary
+# sub-set.
+#
+# -t TAG Use TAG as the tag value in _wanted call.
+#
+# -d DESC Use DESC as the description value in _wanted call.
+#
+# The default complete list of available baud rates is also configurable via
+# the 'baud-rates' style:
+#
+# zstyle ':completion:*' baud-rates 23 42 666
+#
+# It is also possible to override the arguments to -f, -u and -l via styles in
+# a similar fashion:
+#
+# zstyle ':completion:*:*:screen:*' max-baud-rate 9600
+# zstyle ':completion:*:*:screen:*' min-baud-rate 1200
+# zstyle ':completion:*:*:screen:*' baud-rate-filter some_function_name
+
+local -A opts
+local expl tag desc tmp
+local -a rates
+
+zparseopts -E -A opts u: l: f: d: t:
+
+# The following uses a generated list; first find out where the B* macros are
+# defined:
+#
+# grep -r B115200 /usr/include
+#
+# Then generate the actual list:
+#
+# sed -ne '/^[ \t]*#define[ \t]*B[0-9][0-9]*/s,^.*B\([0-9][0-9]*\).*,\1,p' \
+# < /usr/include/asm-generic/termbits.h
+#
+# This one was generated on a Debian Stretch system, leaving out the "0" rate,
+# which is synonymous to "hang-up".
+
+zstyle -a ":completion:${curcontext}:" baud-rates rates ||
+ rates=( 50 75 110 134 150 200 300 600
+ 1200 1800 2400 4800 9600
+ 19200 38400 57600
+ 115200 230400 460800 500000 576000 921600
+ 1000000 1152000 1500000 2000000 2500000 3000000 3500000 4000000 )
+
+zstyle -s ":completion:${curcontext}:" max-baud-rate tmp && opts[-u]=$tmp
+zstyle -s ":completion:${curcontext}:" min-baud-rate tmp && opts[-l]=$tmp
+zstyle -s ":completion:${curcontext}:" baud-rate-filter tmp && opts[-f]=$tmp
+
+if (( ${+opts[-u]} )) || (( ${+opts[-l]} )); then
+ local -i min max
+ min=${opts[-l]:-0}
+ max=${opts[-u]:-${${(On)rates}[1]}}
+ rates=( ${(M)rates:#${~:-<$min-$max>}} )
+fi
+
+if (( ${+opts[-f]} )); then
+ set -- $rates
+ rates=( )
+ for item; do
+ ${opts[-f]} $item && rates+=( $item )
+ done
+fi
+
+tag=${opts[-t]:-baud-rate}
+desc=${opts[-d]:-baud rate}
+
+# -1V removes dupes (which there shouldn't be) and otherwise leaves the
+# order in the $rates array intact.
+_wanted -1V $tag expl $desc compadd -a $expl -- rates
--
2.8.1
next prev parent reply other threads:[~2016-05-07 22:09 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-05-01 1:12 [PATCH] Add completion for picocom utility Frank Terbeck
2016-05-01 3:27 ` Ryan Wilson
2016-05-01 10:57 ` Frank Terbeck
2016-05-01 12:47 ` [PATCH] Refactor baud rate completion Frank Terbeck
2016-05-01 13:14 ` [PATCHv2] " Frank Terbeck
2016-05-01 13:27 ` [PATCHv3] " Frank Terbeck
2016-05-01 22:21 ` Frank Terbeck
2016-05-02 12:55 ` Oliver Kiddle
2016-05-03 21:01 ` Frank Terbeck
2016-05-07 21:53 ` Frank Terbeck
2016-05-11 15:08 ` Oliver Kiddle
2016-05-07 22:09 ` [PATCH 0/6] Update baud rate completion with Oliver's comments in mind Frank Terbeck
2016-05-07 22:09 ` Frank Terbeck [this message]
2016-05-07 22:09 ` [PATCH 2/6] _baudrates: Use 2 space indentation Frank Terbeck
2016-05-07 22:53 ` Frank Terbeck
2016-05-07 22:09 ` [PATCH 3/6] Use _baudrates helper instead of _baudrate Frank Terbeck
2016-05-07 22:09 ` [PATCH 4/6] _baudrates: Fit better into the general completion framework Frank Terbeck
2016-05-07 22:09 ` [PATCH 5/6] _cu: Remove old -d option of _baudrates Frank Terbeck
2016-05-07 22:09 ` [PATCH 6/6] _baudrates: Make style lookups fit better with the rest of compsys Frank Terbeck
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1462658956-11785-2-git-send-email-ft@bewatermyfriend.org \
--to=ft@bewatermyfriend.org \
--cc=okiddle@yahoo.co.uk \
--cc=zsh-workers@zsh.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.vuxu.org/mirror/zsh/
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).