commit: 26397171ecf098661502d86f9c6cde45ec70d180
Author: Fabian Groffen <grobian <AT> gentoo <DOT> org>
AuthorDate: Fri Apr 12 18:48:17 2019 +0000
Commit: Fabian Groffen <grobian <AT> gentoo <DOT> org>
CommitDate: Fri Apr 12 18:48:17 2019 +0000
URL: https://gitweb.gentoo.org/proj/portage-utils.git/commit/?id=26397171
qlist: change behaviour to use colours and no parenthesis
- in list mode, show colours by default (can be disabled in the
normal way using -C)
- in USE-flag mode, don't output ( ) so the output is compatible with
e.g. package.use
Signed-off-by: Fabian Groffen <grobian <AT> gentoo.org>
man/include/qlist.optdesc.yaml | 9 +++------
man/qlist.1 | 11 +++++------
qlist.c | 31 ++++++++++++++++---------------
3 files changed, 24 insertions(+), 27 deletions(-)
diff --git a/man/include/qlist.optdesc.yaml b/man/include/qlist.optdesc.yaml
index 2b9299c..5fff904 100644
--- a/man/include/qlist.optdesc.yaml
+++ b/man/include/qlist.optdesc.yaml
@@ -16,9 +16,6 @@ columns: |
space-separated columns.
verbose: |
When used with \fB\-I\fR, print the package version next to name.
- When listing the package contents, a single \fB\-v\fR displays
- symlinks with an arrow (\->) to their target. Two or more \fB\-v\fR
- adds colour to the entries and prints like \fB\-I\fR before the
- listing. Shows disabled USE-flags when used with \fB\-U\fR.
-quiet: |
- Suppresses the parenthesis around the USE-flags when used with \fB\-U\fR.
+ When listing the package contents, \fB\-v\fR displays symlinks with
+ an arrow (\->) to their target. Shows disabled USE-flags when used
+ with \fB\-U\fR.
diff --git a/man/qlist.1 b/man/qlist.1
index 4df7dab..0b16318 100644
--- a/man/qlist.1
+++ b/man/qlist.1
@@ -1,5 +1,5 @@
.\" generated by mkman.py, please do NOT edit!
-.TH qlist "1" "Mar 2019" "Gentoo Foundation" "qlist"
+.TH qlist "1" "Apr 2019" "Gentoo Foundation" "qlist"
.SH NAME
qlist \- list files owned by pkgname
.SH SYNOPSIS
@@ -57,13 +57,12 @@ Set the ROOT env var.
.TP
\fB\-v\fR, \fB\-\-verbose\fR
When used with \fB\-I\fR, print the package version next to name.
-When listing the package contents, a single \fB\-v\fR displays
-symlinks with an arrow (\->) to their target. Two or more \fB\-v\fR
-adds colour to the entries and prints like \fB\-I\fR before the
-listing. Shows disabled USE-flags when used with \fB\-U\fR.
+When listing the package contents, \fB\-v\fR displays symlinks with
+an arrow (\->) to their target. Shows disabled USE-flags when used
+with \fB\-U\fR.
.TP
\fB\-q\fR, \fB\-\-quiet\fR
-Suppresses the parenthesis around the USE-flags when used with \fB\-U\fR.
+Tighter output; suppress warnings.
.TP
\fB\-C\fR, \fB\-\-nocolor\fR
Don't output color.
diff --git a/qlist.c b/qlist.c
index d46e0a6..313ff56 100644
--- a/qlist.c
+++ b/qlist.c
@@ -88,11 +88,11 @@ cmpstringp(const void *p1, const void *p2)
* -redis -sasl (-selinux) -sqlite -srs -syslog" 0 KiB
*
* % qlist -IUv exim
- * mail-mta/exim-4.92 (-arc -dane -dcc dkim -dlfunc dmarc dnsdb -doc
+ * mail-mta/exim-4.92 -arc -dane -dcc dkim -dlfunc dmarc dnsdb -doc
* -dovecot-sasl -dsn exiscan-acl -gnutls -idn ipv6 -ldap -libressl lmtp
* maildir -mbx -mysql -nis pam -perl -pkcs11 -postgres prdr -proxy
* -radius -redis -sasl -selinux spf -sqlite -srs ssl -syslog tcpd tpda
- * -X)
+ * -X
*/
static char _umapstr_buf[BUFSIZ];
static const char *
@@ -134,8 +134,7 @@ umapstr(char display, q_vdb_pkg_ctx *pkg_ctx)
#define add_to_buf(fmt, Cb, use, Ce) \
bufp += snprintf(bufp, sizeof(_umapstr_buf) - (bufp - _umapstr_buf), \
- " %s%s" fmt "%s", \
- bufp == _umapstr_buf && !quiet ? "(" : "", Cb, use, Ce);
+ " %s" fmt "%s", Cb, use, Ce);
/* merge join, ensure inputs are sorted (Portage does this, but just
* to be sure) */
@@ -163,9 +162,6 @@ umapstr(char display, q_vdb_pkg_ctx *pkg_ctx)
}
}
- bufp += snprintf(bufp, sizeof(_umapstr_buf) - (bufp - _umapstr_buf),
- "%s", bufp == _umapstr_buf || quiet ? "" : ")");
-
freeargv(iuse_argc, iuse_argv);
freeargv(use_argc, use_argv);
free(iuse);
@@ -352,7 +348,8 @@ qlist_cb(q_vdb_pkg_ctx *pkg_ctx, void *priv)
/* see if this cat/pkg is requested */
for (i = optind; i < state->argc; ++i)
- if (qlist_match(pkg_ctx, state->argv[i], &state->atoms[i -
optind], state->exact))
+ if (qlist_match(pkg_ctx, state->argv[i],
+ &state->atoms[i - optind],
state->exact))
break;
if ((i == state->argc) && (state->argc != optind))
return 0;
@@ -362,7 +359,8 @@ qlist_cb(q_vdb_pkg_ctx *pkg_ctx, void *priv)
atom = (verbose ? NULL : atom_explode(pkgname));
if ((state->all + state->just_pkgname) < 2) {
if (state->show_slots && !pkg_ctx->slot) {
- q_vdb_pkg_eat(pkg_ctx, "SLOT", &pkg_ctx->slot,
&pkg_ctx->slot_len);
+ q_vdb_pkg_eat(pkg_ctx, "SLOT",
+ &pkg_ctx->slot,
&pkg_ctx->slot_len);
/* chop off the subslot if desired */
if (state->show_slots == 1) {
char *s = strchr(pkg_ctx->slot, '/');
@@ -396,8 +394,9 @@ qlist_cb(q_vdb_pkg_ctx *pkg_ctx, void *priv)
return 1;
}
- if (verbose > 1)
- printf("%s%s/%s%s%s\n%sCONTENTS%s:\n", BOLD, catname, BLUE,
pkgname, NORM, DKBLUE, NORM);
+ if (verbose)
+ printf("%s%s/%s%s%s %sCONTENTS%s:\n",
+ BOLD, catname, BLUE, pkgname, NORM, DKBLUE,
NORM);
fp = q_vdb_pkg_fopenat_ro(pkg_ctx, "CONTENTS");
if (fp == NULL)
@@ -420,18 +419,20 @@ qlist_cb(q_vdb_pkg_ctx *pkg_ctx, void *priv)
switch (e->type) {
case CONTENTS_DIR:
if (state->show_dir)
- printf("%s%s%s/\n", verbose > 1 ?
YELLOW : "" , e->name, verbose > 1 ? NORM : "");
+ printf("%s%s%s/\n", YELLOW, e->name,
NORM);
break;
case CONTENTS_OBJ:
if (state->show_obj)
- printf("%s%s%s\n", verbose > 1 ? WHITE
: "" , e->name, verbose > 1 ? NORM : "");
+ printf("%s%s%s\n", WHITE, e->name,
NORM);
break;
case CONTENTS_SYM:
if (state->show_sym) {
if (verbose)
- printf("%s%s -> %s%s\n",
verbose > 1 ? CYAN : "", e->name, e->sym_target, NORM);
+ printf("%s%s%s -> %s%s%s\n",
+ CYAN, e->name,
NORM,
+ CYAN,
e->sym_target, NORM);
else
- printf("%s\n", e->name);
+ printf("%s%s%s\n", CYAN,
e->name, NORM);
}
break;
}