From: "Mantas Mikulėnas" <grawity@gmail.com>
To: linux-usb@vger.kernel.org
Cc: gregkh@linuxfoundation.org, "Mantas Mikulėnas" <grawity@gmail.com>
Subject: [PATCH 07/34] lsusb.py: support long options
Date: Mon, 6 May 2019 12:02:14 +0300 [thread overview]
Message-ID: <20190506090241.169665-8-grawity@gmail.com> (raw)
In-Reply-To: <20190506090241.169665-1-grawity@gmail.com>
Signed-off-by: Mantas Mikulėnas <grawity@gmail.com>
---
lsusb.py.in | 48 ++++++++++++++++++++++++++++++------------------
1 file changed, 30 insertions(+), 18 deletions(-)
diff --git a/lsusb.py.in b/lsusb.py.in
index e09b4cf..f9e273d 100644
--- a/lsusb.py.in
+++ b/lsusb.py.in
@@ -523,15 +523,15 @@ def usage():
print("Usage: lsusb.py [options]")
print()
print("Options:")
- # "|-------|-------|-------|-------|-------"
- print(" -h display this help")
- print(" -i display interface information")
- print(" -I display interface information, even for hubs")
- print(" -u suppress empty hubs")
- print(" -U suppress all hubs")
- print(" -c use colors")
- print(" -e display endpoint info")
- print(" -f FILE override filename for /usr/share/usb.ids")
+ print(" -h, --help display this help")
+ print(" -i, --interfaces display interface information")
+ print(" -I, --hub-interfaces display interface information, even for hubs")
+ print(" -u, --hide-empty-hubs suppress empty hubs")
+ print(" -U, --hide-hubs suppress all hubs")
+ print(" -c, --color use colors")
+ print(" -e, --endpoints display endpoint info")
+ print(" -f FILE, --usbids-path FILE")
+ print(" override filename for /usr/share/usb.ids")
print()
print("Use lsusb.py -ciu to get a nice overview of your USB devices.")
@@ -555,40 +555,52 @@ def main(argv):
"main entry point"
global showint, showhubint, noemptyhub, nohub
global cols, usbids, showeps
+
+ long_options = [
+ "help",
+ "interfaces",
+ "hub-interfaces",
+ "hide-empty-hubs",
+ "hide-hubs",
+ "color",
+ "usbids-path=",
+ "endpoints",
+ ]
+
try:
- (optlist, args) = getopt.gnu_getopt(argv[1:], "hiIuUwcef:", ("help",))
+ (optlist, args) = getopt.gnu_getopt(argv[1:], "hiIuUwcef:", long_options)
except getopt.GetoptError as exc:
print("Error:", exc, file=sys.stderr)
sys.exit(2)
for opt in optlist:
- if opt[0] == "-h" or opt[0] == "--help":
+ if opt[0] in {"-h", "--help"}:
usage()
sys.exit(0)
- if opt[0] == "-i":
+ if opt[0] in {"-i", "--interfaces"}:
showint = True
continue
- if opt[0] == "-I":
+ if opt[0] in {"-I", "--hub-interfaces"}:
showint = True
showhubint = True
continue
- if opt[0] == "-u":
+ if opt[0] in {"-u", "--hide-empty-hubs"}:
noemptyhub = True
continue
- if opt[0] == "-U":
+ if opt[0] in {"-U", "--hide-hubs"}:
noemptyhub = True
nohub = True
continue
- if opt[0] == "-c":
+ if opt[0] in {"-c", "--color"}:
cols = (norm, bold, red, green, amber, blue)
continue
if opt[0] == "-w":
print("Warning: option -w is no longer supported", file=sys.stderr)
continue
- if opt[0] == "-f":
+ if opt[0] in {"-f", "--usbids-path"}:
#usbids = (opt[1], *usbids)
usbids = (opt[1],)
continue
- if opt[0] == "-e":
+ if opt[0] in {"-e", "--endpoints"}:
showeps = True
continue
if len(args) > 0:
--
2.21.0
next prev parent reply other threads:[~2019-05-06 9:03 UTC|newest]
Thread overview: 43+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-05-06 9:02 usbutils - various patches to the lsusb.py script Mantas Mikulėnas
2019-05-06 9:02 ` [PATCH 01/34] lsusb.py: sort devices and interfaces numerically Mantas Mikulėnas
2019-05-06 9:02 ` [PATCH 02/34] lsusb.py: sort toplevel entries Mantas Mikulėnas
2019-05-06 9:02 ` [PATCH 03/34] lsusb.py: improve usage text Mantas Mikulėnas
2019-05-06 9:02 ` [PATCH 04/34] lsusb.py: replace fake deepcopy() Mantas Mikulėnas
2019-05-06 9:02 ` [PATCH 05/34] lsusb.py: remove -w (warn if usb.ids not sorted) option Mantas Mikulėnas
2019-05-06 11:12 ` Greg KH
2019-05-06 11:21 ` Mantas Mikulėnas
2019-05-06 12:19 ` Greg KH
2019-05-06 9:02 ` [PATCH 06/34] lsusb.py: ensure all error messages are written to stderr Mantas Mikulėnas
2019-05-06 9:02 ` Mantas Mikulėnas [this message]
2019-05-06 9:02 ` [PATCH 08/34] lsusb.py: do not entirely hide usb.ids exceptions Mantas Mikulėnas
2019-05-06 12:29 ` Greg KH
2019-05-06 12:47 ` Mantas Mikulėnas
2019-05-06 9:02 ` [PATCH 09/34] lsusb.py: use regular print() instead of hand-rolling the same thing Mantas Mikulėnas
2019-05-06 9:02 ` [PATCH 10/34] lsusb.py: avoid shadowing Python's built-in 'str' Mantas Mikulėnas
2019-05-06 9:02 ` [PATCH 11/34] lsusb.py: replace usb.ids binary search with dict lookup Mantas Mikulėnas
2019-05-06 9:02 ` [PATCH 12/34] lsusb.py: remove now-unused bin_search() Mantas Mikulėnas
2019-05-06 9:02 ` [PATCH 13/34] lsusb.py: avoid manual calls to __foo__() Mantas Mikulėnas
2019-05-06 9:02 ` [PATCH 14/34] lsusb.py: replace __repr__() for USB IDs with __str__() Mantas Mikulėnas
2019-05-06 9:02 ` [PATCH 15/34] lsusb.py: insert class FF:FF:FF into usbclasses to avoid special casing Mantas Mikulėnas
2019-05-06 9:02 ` [PATCH 16/34] lsusb.py: entirely remove Usb* classes Mantas Mikulėnas
2019-05-06 9:02 ` [PATCH 17/34] lsusb.py: cosmetic - replace tuples-as-"immutable lists" with regular lists Mantas Mikulėnas
2019-05-06 9:02 ` [PATCH 18/34] lsusb.py: use 'elif' where suitable Mantas Mikulėnas
2019-05-06 12:22 ` Greg KH
2019-05-06 9:02 ` [PATCH 19/34] lsusb.py: remove dead code Mantas Mikulėnas
2019-05-06 9:02 ` [PATCH 20/34] lsusb.py: move unrelated code out of try..except Mantas Mikulėnas
2019-05-06 9:02 ` [PATCH 21/34] lsusb.py: allow - as well as _ when matching hci module names Mantas Mikulėnas
2019-05-06 9:02 ` [PATCH 22/34] lsusb.py: use a constant for the magic class number 9 Mantas Mikulėnas
2019-05-06 9:02 ` [PATCH 23/34] lsusb.py: Usb* classes: call read() automatically from constructor Mantas Mikulėnas
2019-05-06 9:02 ` [PATCH 24/34] lsusb.py: UsbEndpoint: indent is a class implementation detail Mantas Mikulėnas
2019-05-06 9:02 ` [PATCH 25/34] lsusb.py: a few cosmetic changes Mantas Mikulėnas
2019-05-06 9:02 ` [PATCH 26/34] lsusb.py: shorten find_usb_class() Mantas Mikulėnas
2019-05-06 9:02 ` [PATCH 27/34] lsusb.py: give all Usb* objects a .path attribute Mantas Mikulėnas
2019-05-06 9:02 ` [PATCH 28/34] lsusb.py: add an actual __repr__() to classes Mantas Mikulėnas
2019-05-06 9:02 ` [PATCH 29/34] lsusb.py: give all Usb* classes a superclass Mantas Mikulėnas
2019-05-06 9:02 ` [PATCH 30/34] lsusb.py: convert readattr() and readlink() to methods of the container Mantas Mikulėnas
2019-05-06 9:02 ` [PATCH 31/34] lsusb.py: use color by default Mantas Mikulėnas
2019-05-06 9:02 ` [PATCH 32/34] lsusb.py: rework output for more consistent indent of both columns Mantas Mikulėnas
2019-05-06 9:02 ` [PATCH 33/34] lsusb.py: fix endpoint interval spacing Mantas Mikulėnas
2019-05-06 9:02 ` [PATCH 34/34] lsusb.py: visually group USB-version-related fields Mantas Mikulėnas
2019-05-06 12:32 ` usbutils - various patches to the lsusb.py script Greg KH
2019-05-06 12:57 ` Mantas Mikulėnas
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=20190506090241.169665-8-grawity@gmail.com \
--to=grawity@gmail.com \
--cc=gregkh@linuxfoundation.org \
--cc=linux-usb@vger.kernel.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.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.