GNU bug report logs - #56345
29.0.50; [PATCH] Add column hiding to tabulated-list

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: emacs; Severity: wishlist; Reported by: Thuna <thuna.cing@HIDDEN>; Keywords: pending patch; dated Fri, 1 Jul 2022 22:44:01 UTC; Maintainer for emacs is bug-gnu-emacs@HIDDEN.
Added tag(s) pending. Request was from Stefan Kangas <stefankangas@HIDDEN> to control <at> debbugs.gnu.org. Full text available.
Removed tag(s) moreinfo. Request was from Stefan Kangas <stefankangas@HIDDEN> to control <at> debbugs.gnu.org. Full text available.

Message received at 56345 <at> debbugs.gnu.org:


Received: (at 56345) by debbugs.gnu.org; 25 Nov 2022 08:17:55 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Nov 25 03:17:55 2022
Received: from localhost ([127.0.0.1]:33406 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oyTu6-0007ZE-DU
	for submit <at> debbugs.gnu.org; Fri, 25 Nov 2022 03:17:55 -0500
Received: from eggs.gnu.org ([209.51.188.92]:45076)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eliz@HIDDEN>) id 1oyTu4-0007Z1-WF
 for 56345 <at> debbugs.gnu.org; Fri, 25 Nov 2022 03:17:45 -0500
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1oyTtx-0000UY-UL; Fri, 25 Nov 2022 03:17:38 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=O+PAgj92HU1Lp0KmG7cnNMlMd2+YDXU9TibY1ZUeoGg=; b=DGfHPHS9jR6B
 Ujw6VtAsRCc65QJPQe/3UenrgCYEMEInPrn/7mKljKZCFYLR4Y0nzCkrNh/SnEhCLYacxyjjL0J4s
 m0fQOxBJrdfc80Gs160NLE+aqSbtUpblYbJh3UOVKyMiPVxseJi/m3QJJjgkxm3n9LujrNlAGT7JP
 VFYyZTGP9X0ct5rnNVTM7m9I8gTn2d5+GjhQ7pkevEPhm6a0Oks4OIqrHeqeVhov1UtyCP+ud+Hui
 lmSVJuFwJeN6U/m8PPLr2UYwyZE1I2a+VAQCmDN2bCMjRd3+Qpg7HThd/D0wl9LOdAb/eAGNvT6aw
 ofolBeJMgz3QX7fBsmh1Dw==;
Received: from [87.69.77.57] (helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1oyTtx-0002ya-16; Fri, 25 Nov 2022 03:17:37 -0500
Date: Fri, 25 Nov 2022 10:17:57 +0200
Message-Id: <83mt8fv45m.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Stefan Kangas <stefankangas@HIDDEN>
In-Reply-To: <CADwFkmkemAc70y+W42BOiDJW7qoO2Zz7sBeTZidqfgd=wKmjpg@HIDDEN>
 (message from Stefan Kangas on Thu, 24 Nov 2022 17:26:25 -0800)
Subject: Re: bug#56345: 29.0.50; [PATCH] Add column hiding to tabulated-list
References: <87r134ihdd.fsf@HIDDEN> <877d4vfrzu.fsf@HIDDEN>
 <87bkrtzkgm.fsf_-_@HIDDEN> <875yi1iof9.fsf@HIDDEN>
 <875yi0x1dd.fsf@HIDDEN>
 <87ilm0bo3y.fsf@HIDDEN> <87mtbbnyoc.fsf@HIDDEN>
 <87leqv8i1l.fsf@HIDDEN> <87v8pzmjmc.fsf@HIDDEN>
 <CADwFkmkemAc70y+W42BOiDJW7qoO2Zz7sBeTZidqfgd=wKmjpg@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 56345
Cc: larsi@HIDDEN, thuna.cing@HIDDEN, 56345 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> Cc: 56345 <at> debbugs.gnu.org, Thuna <thuna.cing@HIDDEN>
> From: Stefan Kangas <stefankangas@HIDDEN>
> Date: Thu, 24 Nov 2022 17:26:25 -0800
> 
> Lars Ingebrigtsen <larsi@HIDDEN> writes:
> 
> > Oh, OK, that makes sense.  Then I think this sounds like a good
> > addition (but we have to wait for the assignment to be processed to
> > apply the patch).
> 
> What's the status on the copyright assignment?

I don't see anything pertinent on file.  I don't even think I've seen the
beginning of the paperwork in my email (I'm cc'ed on those messages).




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#56345; Package emacs. Full text available.

Message received at 56345 <at> debbugs.gnu.org:


Received: (at 56345) by debbugs.gnu.org; 25 Nov 2022 07:58:24 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Nov 25 02:58:24 2022
Received: from localhost ([127.0.0.1]:33362 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oyTbL-0004mU-UP
	for submit <at> debbugs.gnu.org; Fri, 25 Nov 2022 02:58:24 -0500
Received: from mail-ej1-f48.google.com ([209.85.218.48]:42917)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <thuna.cing@HIDDEN>) id 1oyTbK-0004mH-DQ
 for 56345 <at> debbugs.gnu.org; Fri, 25 Nov 2022 02:58:22 -0500
Received: by mail-ej1-f48.google.com with SMTP id n21so8508454ejb.9
 for <56345 <at> debbugs.gnu.org>; Thu, 24 Nov 2022 23:58:22 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112;
 h=mime-version:message-id:date:references:in-reply-to:subject:cc:to
 :from:from:to:cc:subject:date:message-id:reply-to;
 bh=oDQ8VqDDhHzlUERaPhwuqpr+4KYwP6Jmj3vMJRR6WJ0=;
 b=JX/O/I1+AUy2nX773hXfnEotST9g0YnXtK5KXYk+Lm1f5VYc8ifppRKEMz2l6uHwPP
 ixvAmRA20PQwYsPfyRy+jLPLglk3kx4lonxe8rKpWoxrKw1t4uM3Q+iI+RDT3jmMjg40
 EHfiexA/guPQk7a6BbF5F+KsbdotNOhfQIuqV8QjXNpCkH919wYsHDhnDyq1F893PK4Q
 zvjBnXpAnLOfPVVUuj9JLxd+BRnZ+qIhSvPe7lC/8MKbvRu+Tf3hP3s21sLigzK/dxIj
 rLQ88D8FYJyn+ebC6rjIl3qFpxYadrq7u/oj69zcbOxsJrKBOWJPhT3DPc1R5M8bxlVM
 hPSA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=mime-version:message-id:date:references:in-reply-to:subject:cc:to
 :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
 bh=oDQ8VqDDhHzlUERaPhwuqpr+4KYwP6Jmj3vMJRR6WJ0=;
 b=anV7nJpIeh6UeW3T500UU96hYI7CO8G3NTnTIdkGkXj6oVICshQk68Se6AKFiMRMfH
 P0yEgRfZCeBmsWJLSIzCfh2G62oKMVOOLCI8nMrcJUJ6tpBzb0dAmb6EDVs/O2YsUSLM
 4uXxn6uv9FRc8poaC6ABZhzhKL7hV76B8MYweOFLXpuyPIJfP0cSEAQMDj9Dhpc2UtFM
 GEwtOZ6FwXD74IqyaAP6mj/J2jDfSCG/vuDs3yzzjiAcKab3bBEugNqK1I3F8x9k5EL0
 2qxP6Sf4X4wPvBXhBI2fbb4KHiNAw2vCSiQtWmNhvC9zYtr5fN3lBHtlEhAz5wgYMvHc
 gdfQ==
X-Gm-Message-State: ANoB5plJ4Y5crmi3zLmIeJcX951sMcqR8Yzj37/kHpHZ89F2XdyJHWxt
 xFZAFgRYKK80g2SjGbzTZYxJvaO8a9c=
X-Google-Smtp-Source: AA0mqf6Kp0VfWdvvGmnG7WrXvpQoRjhYD23jUFTbajs056wcPPDjdKKtYCvICs/ESo6HSuSqJtyj7Q==
X-Received: by 2002:a17:906:9518:b0:7ad:b152:6bd1 with SMTP id
 u24-20020a170906951800b007adb1526bd1mr21531691ejx.30.1669363096116; 
 Thu, 24 Nov 2022 23:58:16 -0800 (PST)
Received: from thuna (eduroam-045.unibocconi.it. [90.147.70.45])
 by smtp.gmail.com with ESMTPSA id
 g1-20020a1709063b0100b00773f3cb67ffsm1278083ejf.28.2022.11.24.23.58.15
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 24 Nov 2022 23:58:15 -0800 (PST)
From: Thuna <thuna.cing@HIDDEN>
To: Stefan Kangas <stefankangas@HIDDEN>, Lars Ingebrigtsen <larsi@HIDDEN>
Subject: Re: bug#56345: 29.0.50; [PATCH] Add column hiding to tabulated-list
In-Reply-To: <CADwFkmkemAc70y+W42BOiDJW7qoO2Zz7sBeTZidqfgd=wKmjpg@HIDDEN>
References: <87r134ihdd.fsf@HIDDEN> <877d4vfrzu.fsf@HIDDEN>
 <87bkrtzkgm.fsf_-_@HIDDEN> <875yi1iof9.fsf@HIDDEN>
 <875yi0x1dd.fsf@HIDDEN> <87ilm0bo3y.fsf@HIDDEN>
 <87mtbbnyoc.fsf@HIDDEN> <87leqv8i1l.fsf@HIDDEN>
 <87v8pzmjmc.fsf@HIDDEN>
 <CADwFkmkemAc70y+W42BOiDJW7qoO2Zz7sBeTZidqfgd=wKmjpg@HIDDEN>
Date: Fri, 25 Nov 2022 08:58:14 +0100
Message-ID: <87tu2nqxd5.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 56345
Cc: 56345 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

> What's the status on the copyright assignment?
I believe FSF should currently be negotiating for a disclaimer.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#56345; Package emacs. Full text available.

Message received at 56345 <at> debbugs.gnu.org:


Received: (at 56345) by debbugs.gnu.org; 25 Nov 2022 01:26:35 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Nov 24 20:26:35 2022
Received: from localhost ([127.0.0.1]:60893 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oyNUB-0000Xt-6K
	for submit <at> debbugs.gnu.org; Thu, 24 Nov 2022 20:26:35 -0500
Received: from mail-ot1-f54.google.com ([209.85.210.54]:42920)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <stefankangas@HIDDEN>) id 1oyNU7-0000XQ-Mk
 for 56345 <at> debbugs.gnu.org; Thu, 24 Nov 2022 20:26:32 -0500
Received: by mail-ot1-f54.google.com with SMTP id
 a13-20020a9d6e8d000000b00668d65fc44fso1823906otr.9
 for <56345 <at> debbugs.gnu.org>; Thu, 24 Nov 2022 17:26:31 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112;
 h=cc:to:subject:message-id:date:mime-version:references:in-reply-to
 :from:from:to:cc:subject:date:message-id:reply-to;
 bh=eWkoTc1uCjcFaBvWEt2i8udMXSGoK5Q+ccRevte1zZ8=;
 b=ZA/nV60UKHJeyFtu0lWpKJSa1Vz+DVWVGZn8ajtL6RbIKmYcQ1RYjug0q2tKLQzYAc
 KiVOc5+zlL3xW8yeuxE9H6f/nGuDHOoAnUQU2gtAJ/9kYMM5aw0XLUbkBLIS8yqXCRCT
 pES93/VONuFYyYTW699yYJaPL9UjR9C+K3l8R0jgR0Aem9fUU2+mGdvURLGROK0wILot
 Wx15tpm6BqljljxsCOp6RH8YybzMjEjbBDxfH17VVWiZkCjlJt9bc/rvVR7KJb3mgeg4
 tEzjZ/sW501gK8a/X30Wv6D5UyesYuyHb6uklUkCu7dQPwSPShOjPirT4UAUjuT1LEfU
 upUg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=cc:to:subject:message-id:date:mime-version:references:in-reply-to
 :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
 bh=eWkoTc1uCjcFaBvWEt2i8udMXSGoK5Q+ccRevte1zZ8=;
 b=ICmTdFdQmMMc8YA5YBZ7fAzL6uWUxnQW/AvCmcZFWytR13C8sBv4UtxYEWJnYSvwU1
 RFRT8eRTLVyxdvWJ6z2pyFJFHf9YnWI7/j87Wdy8l89EEXeZ/qAjOW8ApeHFKkJG+a1f
 VpnCf9IzXc6NEeZYajIgZXEdCjEHsz6i9PQY63J4aa1KRn/I0po+huVsgd21JF/Ywh1v
 AHsNbmWui1sdjlfclSCBxUWxYYLnb6BT2eYAtTqyVhI8YrSzyFqtnCk48gTSieKiLuLo
 9oH22pfx1CnvVnPh2LEyPAnwSz5YyzUVERNNUePPTj45Cg10oVlqmHaYcgTMm+salGCM
 H8Qw==
X-Gm-Message-State: ANoB5pmvwrocw12dGNmIfTNpPwUMoaMo5Cyn0v5l3PEOmxbZoGsYBRTu
 usR1BYXEawgZq32WXhvB+IGP8HZXVfvNvmnN+po=
X-Google-Smtp-Source: AA0mqf78HRGt1qGYApGgT5RoGxC48KdnJ8ynfF5jaTrdbZxvEmFq9nCw9ZtM4Y2kJadgJ5sAGgHUr7yexkYTcqeZ3TE=
X-Received: by 2002:a9d:5c81:0:b0:661:c48b:12db with SMTP id
 a1-20020a9d5c81000000b00661c48b12dbmr9153332oti.105.1669339586199; Thu, 24
 Nov 2022 17:26:26 -0800 (PST)
Received: from 753933720722 named unknown by gmailapi.google.com with
 HTTPREST; Thu, 24 Nov 2022 17:26:25 -0800
From: Stefan Kangas <stefankangas@HIDDEN>
In-Reply-To: <87v8pzmjmc.fsf@HIDDEN> (Lars Ingebrigtsen's message of "Wed,
 07 Sep 2022 14:52:59 +0200")
References: <87r134ihdd.fsf@HIDDEN> <877d4vfrzu.fsf@HIDDEN>
 <87bkrtzkgm.fsf_-_@HIDDEN> <875yi1iof9.fsf@HIDDEN>
 <875yi0x1dd.fsf@HIDDEN>
 <87ilm0bo3y.fsf@HIDDEN> <87mtbbnyoc.fsf@HIDDEN>
 <87leqv8i1l.fsf@HIDDEN> <87v8pzmjmc.fsf@HIDDEN>
X-Hashcash: 1:20:221125:larsi@HIDDEN::cnFrQ5+/2wZTU8+5:7aou
MIME-Version: 1.0
Date: Thu, 24 Nov 2022 17:26:25 -0800
Message-ID: <CADwFkmkemAc70y+W42BOiDJW7qoO2Zz7sBeTZidqfgd=wKmjpg@HIDDEN>
Subject: Re: bug#56345: 29.0.50; [PATCH] Add column hiding to tabulated-list
To: Lars Ingebrigtsen <larsi@HIDDEN>
Content-Type: text/plain; charset="UTF-8"
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 56345
Cc: 56345 <at> debbugs.gnu.org, Thuna <thuna.cing@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

Lars Ingebrigtsen <larsi@HIDDEN> writes:

> Thuna <thuna.cing@HIDDEN> writes:
>
>> I can't claim to know how many people would want it, but I can give an
>> example of when it's useful: In the specific package I wrote this patch
>> for, I list information about youtube videos.  The columns `channel ID'
>> and `video ID' are vital, but usually unnecessary and take space.  I
>> have these set in `tabulated-list-format' as hidden by default, so that
>> the user can choose to see them if they wish to.  Using this, I have to
>> query for the videos only once, and then tabulated-list-mode decides
>> what it wants to display on its own.
>
> Oh, OK, that makes sense.  Then I think this sounds like a good
> addition (but we have to wait for the assignment to be processed to
> apply the patch).

What's the status on the copyright assignment?




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#56345; Package emacs. Full text available.

Message received at 56345 <at> debbugs.gnu.org:


Received: (at 56345) by debbugs.gnu.org; 27 Oct 2022 23:12:15 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Oct 27 19:12:15 2022
Received: from localhost ([127.0.0.1]:59688 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ooC2o-0006NH-Tr
	for submit <at> debbugs.gnu.org; Thu, 27 Oct 2022 19:12:15 -0400
Received: from mail-ed1-f50.google.com ([209.85.208.50]:37830)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <thuna.cing@HIDDEN>) id 1ooC2m-0006N3-2A
 for 56345 <at> debbugs.gnu.org; Thu, 27 Oct 2022 19:12:13 -0400
Received: by mail-ed1-f50.google.com with SMTP id l11so4254677edb.4
 for <56345 <at> debbugs.gnu.org>; Thu, 27 Oct 2022 16:12:12 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112;
 h=mime-version:message-id:date:subject:to:from:from:to:cc:subject
 :date:message-id:reply-to;
 bh=GZe+1UwnisvIRAPi7xPO7xB5JFtf6Q1iT0wsxjUbwFA=;
 b=Az30NvOcqhHV3mvh+fqkAzqHd64mhT5HnzAdKbwU7wcjyVG8gVmjH3CHbcZWBMSTHz
 CDtez54aoArS4mCZcmESx80FhWdTZt8WYISG2YOCl0o9ksfa612/6dGKJ/bo2aktkY1M
 ylfzgDWuCO1oyKB/bbZXEFFM21FvrNPQJfundfbeP3Dwgxjg5Odr+vjh/S/gQryPMPbU
 pQe8diZHJZN0ZvC8XaV6PPbAkq/NAa0zd9jiGkSOsn8cTvbVpPx20D26H2+PMZRhsgZn
 UckEXlyzs6p1wBj5vlxtHz3R70VyJZwCjkf8HuR3SRsbKGov4znyRW7PMJ13Ixab1+Ho
 22WQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=mime-version:message-id:date:subject:to:from:x-gm-message-state
 :from:to:cc:subject:date:message-id:reply-to;
 bh=GZe+1UwnisvIRAPi7xPO7xB5JFtf6Q1iT0wsxjUbwFA=;
 b=CSd2JBgftHcAAwrf378xk9shgBXDpTdKC1gRZB1DB9onLzvXBAIvraEQgxmWf8zoMT
 3iTQ8M4RhTN7Ie5cdY1hE4ZMYrQBB5vwS5BBode+VwrCRnjbjavVLhN44SoTskBqUATq
 ffzXe7Y+iOCTyGJrrWm/BkhwPy6WmgLP18NaAguNpULeU5N/ANWFH0TGu3WdMTJgVi9U
 RtAxY1c31SACrlAEJByROSarBmDSMtR7/TgpbsKkcrUQgkVC901h+8SaHbbTS0lTlJvl
 HxTwA1+AIMZKQ+xF34SPgyQpqV7XBwo4brQMWMT7N1cKkao3M+w4m1lXg/94sgQz3DJr
 YVGA==
X-Gm-Message-State: ACrzQf2+7c+OpRZ6D22lXL6otisfff7ARx3NeXj1lR+Fu9PTdsCjc+xc
 lpefirQsxgH7nS5cBMfazwMAs5ZD3ps=
X-Google-Smtp-Source: AMsMyM7abMOe7/uZaJADsgZHzHWlwvNJE09q7j0jKJnPqXwl5kkmF7yP3k6QcPQ0u+esGCo9+L2r8A==
X-Received: by 2002:a05:6402:84d:b0:454:f41d:6ccf with SMTP id
 b13-20020a056402084d00b00454f41d6ccfmr47729611edz.129.1666912325827; 
 Thu, 27 Oct 2022 16:12:05 -0700 (PDT)
Received: from thuna ([90.147.71.254]) by smtp.gmail.com with ESMTPSA id
 f30-20020a170906739e00b0078e05db7005sm1312035ejl.214.2022.10.27.16.12.04
 for <56345 <at> debbugs.gnu.org>
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 27 Oct 2022 16:12:04 -0700 (PDT)
From: Thuna <thuna.cing@HIDDEN>
To: 56345 <at> debbugs.gnu.org
Subject: Re: 29.0.50; [PATCH] Add column hiding to tabulated-list
Date: Fri, 28 Oct 2022 01:12:03 +0200
Message-ID: <871qqsuaik.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 56345
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--=-=-=
Content-Type: text/plain

I fixed and improved a couple things (though the assignment is still
pending).  Namely, the commands are actually bound in
`tabulated-list-mode-map' and the command
`tabulated-list-make-column-visible' is renamed to
`tabulated-list-unhide-column'.

--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0001-Add-column-hiding-to-tabulated-list-mode.patch
Content-Description: The new and improved patch

From 97e8d9e0dcc41bd32112072e0ff47ae703792378 Mon Sep 17 00:00:00 2001
From: Thuna <thuna.cing@HIDDEN>
Date: Tue, 11 Oct 2022 22:17:15 +0200
Subject: [PATCH] Add column hiding to tabulated-list-mode

Add the keyword `:hidden' to `tabulated-list-format' for controlling
the visibility of a specific column.

Introduce the commands `tabulated-list-hide-current-column' and
`tabulated-list-unhide-column' for interactively changing the
`:hidden' property of the column.  The commands are bound to "." and
"+" respectively.

Change calculations involving other columns to account for the
`:hidden' property.

Make the current column calculation into its own function named
`tabulated-list-get-column'.  Make `tabulated-list-widen-current-column'
use that instead. Use the text property `tabulated-list-column-name'
to find the current tabulated-list column instead of `current-column'.
---
 lisp/emacs-lisp/tabulated-list.el | 273 +++++++++++++++++-------------
 1 file changed, 153 insertions(+), 120 deletions(-)

diff --git a/lisp/emacs-lisp/tabulated-list.el b/lisp/emacs-lisp/tabulated-list.el
index c01f3fd4fe..d86f4de5f5 100644
--- a/lisp/emacs-lisp/tabulated-list.el
+++ b/lisp/emacs-lisp/tabulated-list.el
@@ -104,7 +104,8 @@ tabulated-list-format
    Currently supported properties are:
    - `:right-align': If non-nil, the column should be right-aligned.
    - `:pad-right': Number of additional padding spaces to the
-     right of the column (defaults to 1 if omitted).")
+     right of the column (defaults to 1 if omitted).
+   - `:hidden': If non-nil, the column should not be visible.")
 (put 'tabulated-list-format 'permanent-local t)
 
 (defvar-local tabulated-list-use-header-line t
@@ -179,6 +180,11 @@ tabulated-list-get-entry
 no entry at POS.  POS, if omitted or nil, defaults to point."
   (get-text-property (or pos (point)) 'tabulated-list-entry))
 
+(defun tabulated-list-get-column (&optional pos)
+  "Return the column name of the Tabulated List cell at POS.
+POS, if omitted or nil, defaults to point."
+  (get-text-property (or pos (point)) 'tabulated-list-column-name))
+
 (defun tabulated-list-put-tag (tag &optional advance)
   "Put TAG in the padding area of the current line.
 TAG should be a string, with length <= `tabulated-list-padding'.
@@ -227,6 +233,8 @@ tabulated-list-mode-map
   "S"             #'tabulated-list-sort
   "}"             #'tabulated-list-widen-current-column
   "{"             #'tabulated-list-narrow-current-column
+  "."             #'tabulated-list-hide-current-column
+  "+"             #'tabulated-list-unhide-column
   "<follow-link>" 'mouse-face
   "<mouse-2>"     #'mouse-select-window)
 
@@ -285,7 +293,7 @@ tabulated-list-init-header
           cols)
     (dotimes (n len)
       (let* ((col (aref tabulated-list-format n))
-             (not-last-col (< n (1- len)))
+             (not-last-col (tabulated-list--next-visible-column n))
 	     (label (nth 0 col))
              (lablen (length label))
              (pname label)
@@ -293,62 +301,64 @@ tabulated-list-init-header
 	     (props (nthcdr 3 col))
 	     (pad-right (or (plist-get props :pad-right) 1))
              (right-align (plist-get props :right-align))
+             (hidden (plist-get props :hidden))
              (next-x (+ x pad-right width))
              (available-space
               (and not-last-col
                    (if right-align
                        width
                      (tabulated-list--available-space width n)))))
-        (when (and (>= lablen 3)
-                   not-last-col
-                   (> lablen available-space))
-          (setq label (truncate-string-to-width label available-space
-                                                nil nil t)))
-	(push
-	 (cond
-	  ;; An unsortable column
-	  ((not (nth 2 col))
-	   (propertize label 'tabulated-list-column-name pname))
-	  ;; The selected sort column
-	  ((equal (car col) (car tabulated-list-sort-key))
-	   (apply 'propertize
-                  (concat label
-                          (cond
-                           ((and (< lablen 3) not-last-col) "")
-                           ((cdr tabulated-list-sort-key)
-                            (format " %c"
-                                    tabulated-list-gui-sort-indicator-desc))
-                           (t (format " %c"
-                                      tabulated-list-gui-sort-indicator-asc))))
-                  'face 'bold
-                  'tabulated-list-column-name pname
-                  button-props))
-	  ;; Unselected sortable column.
-	  (t (apply 'propertize label
-		    'tabulated-list-column-name pname
-		    button-props)))
-	 cols)
-        (when right-align
-          (let ((shift (- width (string-width (car cols)))))
-            (when (> shift 0)
-              (setq cols
-                    (cons (car cols)
-                          (cons
-                           (propertize
-                            (make-string shift ?\s)
-                            'display
-                            `(space :align-to
-                                    (+ header-line-indent-width ,(+ x shift))))
-                           (cdr cols))))
-              (setq x (+ x shift)))))
-	(if (>= pad-right 0)
-	    (push (propertize
-                   " "
-		   'display `(space :align-to
-                                    (+ header-line-indent-width ,next-x))
-		   'face 'fixed-pitch)
-		  cols))
-        (setq x next-x)))
+        (unless hidden
+          (when (and (>= lablen 3)
+                     not-last-col
+                     (> lablen available-space))
+            (setq label (truncate-string-to-width label available-space
+                                                  nil nil t)))
+	  (push
+	   (cond
+	    ;; An unsortable column
+	    ((not (nth 2 col))
+	     (propertize label 'tabulated-list-column-name pname))
+	    ;; The selected sort column
+	    ((equal (car col) (car tabulated-list-sort-key))
+	     (apply 'propertize
+                    (concat label
+                            (cond
+                             ((and (< lablen 3) not-last-col) "")
+                             ((cdr tabulated-list-sort-key)
+                              (format " %c"
+                                      tabulated-list-gui-sort-indicator-desc))
+                             (t (format " %c"
+                                        tabulated-list-gui-sort-indicator-asc))))
+                    'face 'bold
+                    'tabulated-list-column-name pname
+                    button-props))
+	    ;; Unselected sortable column.
+	    (t (apply 'propertize label
+		      'tabulated-list-column-name pname
+		      button-props)))
+	   cols)
+          (when right-align
+            (let ((shift (- width (string-width (car cols)))))
+              (when (> shift 0)
+                (setq cols
+                      (cons (car cols)
+                            (cons
+                             (propertize
+                              (make-string shift ?\s)
+                              'display
+                              `(space :align-to
+                                      (+ header-line-indent-width ,(+ x shift))))
+                             (cdr cols))))
+                (setq x (+ x shift)))))
+	  (if (>= pad-right 0)
+	      (push (propertize
+                     " "
+		     'display `(space :align-to
+                                      (+ header-line-indent-width ,next-x))
+		     'face 'fixed-pitch)
+		    cols))
+          (setq x next-x))))
     (setq cols (apply 'concat (nreverse cols)))
     (if tabulated-list-use-header-line
 	(setq header-line-format (list "" 'header-line-indent cols))
@@ -530,15 +540,29 @@ tabulated-list-print-entry
      beg (point)
      `(tabulated-list-id ,id tabulated-list-entry ,cols))))
 
+(defun tabulated-list--next-visible-column (n)
+  (let ((len (length tabulated-list-format))
+        (col-nb (1+ n))
+        found)
+    (while (and (< col-nb len)
+                (not found))
+      (if (plist-get (nthcdr 3 (aref tabulated-list-format col-nb))
+                     :hidden)
+          (setq col-nb (1+ col-nb))
+        (setq found t)))
+    (when (< col-nb len)
+      col-nb)))
+
 (defun tabulated-list--available-space (width n)
-  (let* ((next-col-format (aref tabulated-list-format (1+ n)))
+  (let* ((next-col (tabulated-list--next-visible-column n))
+         (next-col-format (aref tabulated-list-format next-col))
          (next-col-right-align (plist-get (nthcdr 3 next-col-format)
                                           :right-align))
          (next-col-width (nth 1 next-col-format)))
     (if next-col-right-align
         (- (+ width next-col-width)
            (min next-col-width
-                (tabulated-list--col-local-max-widths (1+ n))))
+                (tabulated-list--col-local-max-widths next-col)))
       width)))
 
 (defun tabulated-list-print-col (n col-desc x)
@@ -552,50 +576,52 @@ tabulated-list-print-col
 	 (props     (nthcdr 3 format))
 	 (pad-right (or (plist-get props :pad-right) 1))
          (right-align (plist-get props :right-align))
+         (hidden (plist-get props :hidden))
          (label (cond ((stringp col-desc) col-desc)
                       ((eq (car col-desc) 'image) " ")
                       (t (car col-desc))))
          (label-width (string-width label))
 	 (help-echo (concat (car format) ": " label))
 	 (opoint (point))
-	 (not-last-col (< (1+ n) (length tabulated-list-format)))
+	 (not-last-col (tabulated-list--next-visible-column n))
 	 (available-space (and not-last-col
                                (if right-align
                                    width
                                  (tabulated-list--available-space width n)))))
-    ;; Truncate labels if necessary (except last column).
-    ;; Don't truncate to `width' if the next column is align-right
-    ;; and has some space left, truncate to `available-space' instead.
-    (when (and not-last-col
-	       (> label-width available-space))
-      (setq label (truncate-string-to-width
-		   label available-space nil nil t t)
-	    label-width available-space))
-    (setq label (bidi-string-mark-left-to-right label))
-    (when (and right-align (> width label-width))
-      (let ((shift (- width label-width)))
-        (insert (propertize (make-string shift ?\s)
-                            'display `(space :align-to ,(+ x shift))))
-        (setq width (- width shift))
-        (setq x (+ x shift))))
-    (cond ((stringp col-desc)
-           (insert (if (get-text-property 0 'help-echo label)
-                       label
-                     (propertize label 'help-echo help-echo))))
-          ((eq (car col-desc) 'image)
-           (insert (propertize " "
-                               'display col-desc
-                               'help-echo help-echo)))
-          ((apply 'insert-text-button label (cdr col-desc))))
-    (let ((next-x (+ x pad-right width)))
-      ;; No need to append any spaces if this is the last column.
-      (when not-last-col
-        (when (> pad-right 0) (insert (make-string pad-right ?\s)))
-        (insert (propertize
-                 (make-string (- width (min width label-width)) ?\s)
-                 'display `(space :align-to ,next-x))))
-      (put-text-property opoint (point) 'tabulated-list-column-name name)
-      next-x)))
+    (if hidden x
+      ;; Truncate labels if necessary (except last column).
+      ;; Don't truncate to `width' if the next column is align-right
+      ;; and has some space left, truncate to `available-space' instead.
+      (when (and not-last-col
+	         (> label-width available-space))
+        (setq label (truncate-string-to-width
+		     label available-space nil nil t t)
+	      label-width available-space))
+      (setq label (bidi-string-mark-left-to-right label))
+      (when (and right-align (> width label-width))
+        (let ((shift (- width label-width)))
+          (insert (propertize (make-string shift ?\s)
+                              'display `(space :align-to ,(+ x shift))))
+          (setq width (- width shift))
+          (setq x (+ x shift))))
+      (cond ((stringp col-desc)
+             (insert (if (get-text-property 0 'help-echo label)
+                         label
+                       (propertize label 'help-echo help-echo))))
+            ((eq (car col-desc) 'image)
+             (insert (propertize " "
+                                 'display col-desc
+                                 'help-echo help-echo)))
+            ((apply 'insert-text-button label (cdr col-desc))))
+      (let ((next-x (+ x pad-right width)))
+        ;; No need to append any spaces if this is the last column.
+        (when not-last-col
+          (when (> pad-right 0) (insert (make-string pad-right ?\s)))
+          (insert (propertize
+                   (make-string (- width (min width label-width)) ?\s)
+                   'display `(space :align-to ,next-x))))
+        (put-text-property opoint (point) 'tabulated-list-column-name name)
+        next-x))))
 
 (defun tabulated-list-delete-entry ()
   "Delete the Tabulated List entry at point.
@@ -726,38 +752,16 @@ tabulated-list-widen-current-column
 Interactively, N is the prefix numeric argument, and defaults to
 1."
   (interactive "p")
-  (let ((start (current-column))
-        (entry (tabulated-list-get-entry))
-        (nb-cols (length tabulated-list-format))
-        (col-nb 0)
-        (total-width 0)
-        (found nil)
-        col-width)
-    (while (and (not found)
-                (< col-nb nb-cols))
-      (if (>= start
-              (setq total-width
-                    (+ total-width
-                       (max (setq col-width
-                                  (cadr (aref tabulated-list-format
-                                              col-nb)))
-                            (let ((desc (aref entry col-nb)))
-                              (string-width (if (stringp desc)
-                                                desc
-                                              (car desc)))))
-                       (or (plist-get (nthcdr 3 (aref tabulated-list-format
-                                                      col-nb))
-                                      :pad-right)
-                           1))))
-          (setq col-nb (1+ col-nb))
-        (setq found t)
-        ;; `tabulated-list-format' may be a constant (sharing list
-        ;; structures), so copy it before mutating.
-        (setq tabulated-list-format (copy-tree tabulated-list-format t))
-        (setf (cadr (aref tabulated-list-format col-nb))
-              (max 1 (+ col-width n)))
-        (tabulated-list-print t)
-        (tabulated-list-init-header)))))
+  (let* ((col-nb (tabulated-list--column-number
+                  (tabulated-list-get-column)))
+         (col-width (cadr (aref tabulated-list-format col-nb))))
+    ;; `tabulated-list-format' may be a constant (sharing list
+    ;; structures), so copy it before mutating.
+    (setq tabulated-list-format (copy-tree tabulated-list-format t))
+    (setf (cadr (aref tabulated-list-format col-nb))
+          (max 1 (+ col-width n)))
+    (tabulated-list-print t)
+    (tabulated-list-init-header)))
 
 (defun tabulated-list-narrow-current-column (&optional n)
   "Narrow the current tabulated list column by N chars.
@@ -766,6 +770,35 @@ tabulated-list-narrow-current-column
   (interactive "p")
   (tabulated-list-widen-current-column (- n)))
 
+(defun tabulated-list-hide-current-column ()
+  "Hide the current tabulated list column."
+  (interactive)
+  (let ((col-nb (tabulated-list--column-number
+                 (tabulated-list-get-column))))
+    (setf (nthcdr 3 (aref tabulated-list-format col-nb))
+          (plist-put (nthcdr 3 (aref tabulated-list-format col-nb))
+                     :hidden t)))
+  (tabulated-list-init-header)
+  (tabulated-list-print t t))
+
+(defun tabulated-list-unhide-column (name)
+  "Make the tabulated list column NAME visible.
+Interactively, NAME is a hidden column propmted for with
+`completing-read'."
+  (interactive
+   (list
+    (completing-read "Colummn name: "
+                     (append tabulated-list-format nil)
+                     (lambda (col)
+                       (plist-get (nthcdr 3 col) :hidden))
+                     t)))
+  (let ((col-nb (tabulated-list--column-number name)))
+    (setf (nthcdr 3 (aref tabulated-list-format col-nb))
+          (plist-put (nthcdr 3 (aref tabulated-list-format col-nb))
+                     :hidden nil)))
+  (tabulated-list-init-header)
+  (tabulated-list-print t t))
+
 (defun tabulated-list-next-column (&optional arg)
   "Go to the start of the next column after point on the current line.
 If ARG is provided, move that many columns."
-- 
2.35.1


--=-=-=--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#56345; Package emacs. Full text available.

Message received at 56345 <at> debbugs.gnu.org:


Received: (at 56345) by debbugs.gnu.org; 8 Sep 2022 19:19:25 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Sep 08 15:19:24 2022
Received: from localhost ([127.0.0.1]:60083 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oWN3c-0003iw-LI
	for submit <at> debbugs.gnu.org; Thu, 08 Sep 2022 15:19:24 -0400
Received: from stw1.rcdrun.com ([217.170.207.13]:42943)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <bugs@HIDDEN>) id 1oWN3Z-0003ia-0n
 for 56345 <at> debbugs.gnu.org; Thu, 08 Sep 2022 15:19:23 -0400
Received: from localhost ([::ffff:197.239.4.185])
 (AUTH: PLAIN admin, TLS: TLS1.3,256bits,ECDHE_RSA_AES_256_GCM_SHA384)
 by stw1.rcdrun.com with ESMTPSA
 id 00000000000B5AC7.00000000631A4031.000031A8; Thu, 08 Sep 2022 12:19:13 -0700
Date: Thu, 8 Sep 2022 21:14:00 +0300
From: Jean Louis <bugs@HIDDEN>
To: Michael Heerdegen <michael_heerdegen@HIDDEN>
Subject: Re: bug#56345: 29.0.50; [PATCH] Add column hiding to tabulated-list
Message-ID: <Yxow6J9iypsDlygS@HIDDEN>
References: <87pmg7tqps.fsf@HIDDEN>
 <87v8py1k93.fsf@HIDDEN>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
In-Reply-To: <87v8py1k93.fsf@HIDDEN>
User-Agent: Mutt/+ () (2022-06-11)
X-Spam-Score: 2.6 (++)
X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 the administrator of that system for details.
 Content preview:  * Michael Heerdegen <michael_heerdegen@HIDDEN> [2022-09-08
 08:59]: > Thuna <thuna.cing@HIDDEN> writes: > > > I don't know how `proced'
 and `ibuffer' specifically handles views, but > > I don't thin [...] 
 Content analysis details:   (2.6 points, 10.0 required)
 pts rule name              description
 ---- ---------------------- --------------------------------------------------
 2.6 RCVD_IN_SBL            RBL: Received via a relay in Spamhaus SBL
 [197.239.4.185 listed in zen.spamhaus.org]
 -0.0 SPF_PASS               SPF: sender matches SPF record
 -0.0 SPF_HELO_PASS          SPF: HELO matches SPF record
 -0.0 T_SCC_BODY_TEXT_LINE   No description available.
X-Debbugs-Envelope-To: 56345
Cc: 56345 <at> debbugs.gnu.org, Thuna <thuna.cing@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 1.6 (+)
X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 the administrator of that system for details.
 
 Content preview:  * Michael Heerdegen <michael_heerdegen@HIDDEN> [2022-09-08
    08:59]: > Thuna <thuna.cing@HIDDEN> writes: > > > I don't know how `proced'
    and `ibuffer' specifically handles views, but > > I don't thin [...] 
 
 Content analysis details:   (1.6 points, 10.0 required)
 
  pts rule name              description
 ---- ---------------------- --------------------------------------------------
  2.6 RCVD_IN_SBL            RBL: Received via a relay in Spamhaus SBL
                             [197.239.4.185 listed in zen.spamhaus.org]
 -0.0 SPF_PASS               SPF: sender matches SPF record
 -0.0 SPF_HELO_PASS          SPF: HELO matches SPF record
 -0.0 T_SCC_BODY_TEXT_LINE   No description available.
 -1.0 MAILING_LIST_MULTI     Multiple indicators imply a widely-seen list
                             manager

* Michael Heerdegen <michael_heerdegen@HIDDEN> [2022-09-08 08:59]:
> Thuna <thuna.cing@HIDDEN> writes:
> 
> > I don't know how `proced' and `ibuffer' specifically handles views, but
> > I don't think it is a good idea to put the burden on external packages
> > when tabulated-list is right there.  Especially since this leads to a
> > lot of (what I imagine to be) duplicated code across packages.
> 
> Exactly.  tabulated-list should implement this feature.
> 
> > I don't exactly understand what you mean by "interface".  Are you
> > referring to the package which should be responsible for managing
> > which columns are visible?
> 
> No, I mean, how should column hiding happen?  Should the user select
> single columns interactively, or should we provide a way to define
> restricted views?  Maybe we can have both?

It seems to me complex to hide columns as one would need to manipulated:

- tabulated-list-format

and

- tabulated-list-entries

One way to go would be:

1. Remember original format

2. Generate new format with column hidden

3. Remember original tabulated-list-entries

4. Modify tabulated-list-entries to remove the column

5. Refresh buffer

6. Revealing columns should restore original variables


Jean

Take action in Free Software Foundation campaigns:
https://www.fsf.org/campaigns

In support of Richard M. Stallman
https://stallmansupport.org/




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#56345; Package emacs. Full text available.

Message received at 56345 <at> debbugs.gnu.org:


Received: (at 56345) by debbugs.gnu.org; 8 Sep 2022 05:57:21 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Sep 08 01:57:21 2022
Received: from localhost ([127.0.0.1]:56997 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oWAXR-0002SM-5b
	for submit <at> debbugs.gnu.org; Thu, 08 Sep 2022 01:57:21 -0400
Received: from mout.web.de ([212.227.15.3]:39707)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <michael_heerdegen@HIDDEN>) id 1oWAXP-0002SA-46
 for 56345 <at> debbugs.gnu.org; Thu, 08 Sep 2022 01:57:19 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=web.de;
 s=dbaedf251592; t=1662616633;
 bh=Ddcwq9Jwu6AHUC8rPJJOj74GeyQXT18u+8K2GvJIyMM=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date;
 b=m0MSIjoc0dA6pqhjWs5FkgT6gojQl4rV/KLSKVkarWsi4EC76u4RbvRBB1UKIbetZ
 rwpJqiOsNPZA14d1B/p1T2gVY1DoDVqTZ0Hn8bU1d0IlGO1APsf9qoTQZW4H7NI9cP
 /kwZPx1Qh1sbrBeptducZxwbjXgs1T2wfPTNynwI=
X-UI-Sender-Class: c548c8c5-30a9-4db5-a2e7-cb6cb037b8f9
Received: from drachen.dragon ([92.208.190.67]) by smtp.web.de (mrweb006
 [213.165.67.108]) with ESMTPSA (Nemesis) id 1MrOdf-1pB3S33fbr-00oDDy; Thu, 08
 Sep 2022 07:57:12 +0200
From: Michael Heerdegen <michael_heerdegen@HIDDEN>
To: Thuna <thuna.cing@HIDDEN>
Subject: Re: bug#56345: 29.0.50; [PATCH] Add column hiding to tabulated-list
In-Reply-To: <87pmg7tqps.fsf@HIDDEN> (Thuna's message of "Wed, 07 Sep 2022
 12:37:51 +0200")
References: <87pmg7tqps.fsf@HIDDEN>
Date: Thu, 08 Sep 2022 07:57:12 +0200
Message-ID: <87v8py1k93.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:50Dy7jImnCf5E1EyoOInTTiBKHqLf90C9MzLTjlk+9xELacf8qd
 p44AobgoFKvgEoaHH73mR3Q3mh73YejhFFUde363NvfDtAARBTsk4cjKouU3VxbWLqpO0dw
 rWpK+FfxFVqMSaRr8d4N5vV3pvOFquMIp785OQ70N2wx+2rplNogm//VHD+oc2d3vKteqqY
 ta91VR3u4RCEXcYY0sWlw==
X-Spam-Flag: NO
X-UI-Out-Filterresults: notjunk:1;V03:K0:ax3DrlvdkvQ=:Hty/a6x+0S5VGQIfVjpCw5
 pLxMHCTT4CfA85qKVSAp51GIlK7iTllUXfcqkmNPEcUXMc4PH7zZI3LlGC1oP3qUpzI81Bgt2
 P9uSqhH6dHNnzMOwHJ6qkO/Xu5I8KDiKL4hfiYF62IpyvIAnnRjC/e4i6RrTf99hajIIfhOEs
 QW1s2/Y2JsqR7BVZJp+qcwsElw+DQZl7YLYFFg8JWltuwJQ76izE5zNZs198fUOdLTCfZeTlI
 ag32bC24LfWSQQtko1Wch/Yhd0jMFzGHqQjnoqi9N8TtgOUW1TgBe5c+qivA11RSdIgkrUq16
 7bEI6oHgpm/h/Wg3tUfqar8qedcisDs9ADJq+T0B/Eq0oEE2ck3dLusskAMO6KHrEN8Pa2I59
 GT5qgqQQr5MMdbs1+kr9EQy8dZNybr4Evv8hOnBxsN6eM/COki6rljaerOhPHjyjKtNkKEH79
 +iqI4ub6hSThL/REqnR/wRNOEsuPk61B2ngTxDsV8sJ6FiRZ9E/VO5PT4ycxSAu/lNTjPDv+P
 zS1WirEg4sLsw7kyYYQVH6lk6CGWvxsZNkxhnrlrT7I3BFuOzsndD/ubSpQxQ2rzVZnBeN7CT
 ld5kzJzuwTqWj2e7Y/SRKBmnjseEpyicIkjrbwihF1KCtXqkp9dLXdmCi5cxJ4pN2EgODxuE9
 afPCVmwLWOadOoI76l1WyE9PckkBltThfaG/bhZusjMmtD/ynhT/bVGqD0WMHp7AW+nvM4guq
 Lr5DphRthfx+omYfdNdgy01Do6AojbcCPIgsjI0FMBYsyTVnbtHzmW6TYTSasGDK3N4jaxdpw
 YSdGON1WXdQ5ltc8SgolFF9nBgaeQCzzSdeRTVHyL59bvzZIm3xJcym1posjJVcgW+S7vbq3c
 cGE6R7X3wENtOO9M73QUuiTQVvxkUSkj/psROxSzcEKTJgl2iqqEkoonhrZ2EuouOnaVgXUgW
 /+HO6nKVqtaYm27nQa02L9Ytrcf8sU3DWMQHfw1sGqGpsNuJAkcqt7EflbJU2yHwjQuEYLTNv
 m6U940kRvbFB2dbhPztaA0Ef+7r593zwiX5KBTQDWDDO7pCiW2BQxmXJAr0+lmFRl8pO5DmbU
 tBRqTzBKlFk0F1T2+Qsq7MJwo4yD+HB/PeM7xs445xcj6JuDq5gGiVuq+OEMQvjCjhqV/BWNm
 G4k5Qzq7VFLwCeSeAfA7WVcDx5
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 56345
Cc: 56345 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

Thuna <thuna.cing@HIDDEN> writes:

> I don't know how `proced' and `ibuffer' specifically handles views, but
> I don't think it is a good idea to put the burden on external packages
> when tabulated-list is right there.  Especially since this leads to a
> lot of (what I imagine to be) duplicated code across packages.

Exactly.  tabulated-list should implement this feature.

> I don't exactly understand what you mean by "interface".  Are you
> referring to the package which should be responsible for managing
> which columns are visible?

No, I mean, how should column hiding happen?  Should the user select
single columns interactively, or should we provide a way to define
restricted views?  Maybe we can have both?

Michael.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#56345; Package emacs. Full text available.

Message received at 56345 <at> debbugs.gnu.org:


Received: (at 56345) by debbugs.gnu.org; 8 Sep 2022 05:54:06 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Sep 08 01:54:05 2022
Received: from localhost ([127.0.0.1]:56993 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oWAUH-0002Ns-Kz
	for submit <at> debbugs.gnu.org; Thu, 08 Sep 2022 01:54:05 -0400
Received: from mout.web.de ([212.227.15.3]:49511)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <michael_heerdegen@HIDDEN>) id 1oWAUF-0002NO-GV
 for 56345 <at> debbugs.gnu.org; Thu, 08 Sep 2022 01:54:04 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=web.de;
 s=dbaedf251592; t=1662616436;
 bh=TfpIe0g3jr7Jq7roTs5vtTJziN27XOfsKW1fscXLXN4=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date;
 b=E8I7YxWkcGGbgwyRGsbeThLC5RLcCpqmByegQSMPsdK6CuT33F2pGNNXHkJleP7Uv
 AEt65r08Xzp/I0QseB026/tKO3CdCZEpXBwtwLxGDSmmHUa6dgvXWMW0R8Z9eKC+6u
 jESqb1zAQIOZinYQIoyRH+OwylfvFrh49DSjPPiY=
X-UI-Sender-Class: c548c8c5-30a9-4db5-a2e7-cb6cb037b8f9
Received: from drachen.dragon ([92.208.190.67]) by smtp.web.de (mrweb006
 [213.165.67.108]) with ESMTPSA (Nemesis) id 1MxYXF-1pG2w91sCX-00xes2; Thu, 08
 Sep 2022 07:53:56 +0200
From: Michael Heerdegen <michael_heerdegen@HIDDEN>
To: Lars Ingebrigtsen <larsi@HIDDEN>
Subject: Re: bug#56345: 29.0.50; [PATCH] Add column hiding to tabulated-list
In-Reply-To: <87r10nnyq3.fsf@HIDDEN> (Lars Ingebrigtsen's message of "Wed,
 07 Sep 2022 14:41:24 +0200")
References: <87r134ihdd.fsf@HIDDEN> <877d4vfrzu.fsf@HIDDEN>
 <87bkrtzkgm.fsf_-_@HIDDEN> <875yi1iof9.fsf@HIDDEN>
 <875yi0x1dd.fsf@HIDDEN> <87ilm0bo3y.fsf@HIDDEN>
 <87mtbb7tr9.fsf@HIDDEN> <87r10nnyq3.fsf@HIDDEN>
Date: Thu, 08 Sep 2022 07:53:55 +0200
Message-ID: <87zgfa1kek.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:D8ui8pJsrt15ncA0KqD11/NTqeFV1JyjkTIYrbz4SZL0qr2FJx7
 j+fMJyRjzXQcKlzFJPB/8oe6tqFFGF68kEcwhOirQlMNb8LLQpQ+6QGAAmIme3BfrUYEl/p
 KSOxFb9oiuy0zaENVfAJ+2IbNsElbt1vfjS3Gadywn5gogg2c35iOyUF7vaA8vsd33wtiTj
 GqrWvEP+1pJy4tnKOCJ3A==
X-Spam-Flag: NO
X-UI-Out-Filterresults: notjunk:1;V03:K0:kjazWkLxLVQ=:tKuL6A9S0mSQiS5nsKWySJ
 qYTxlBJ+Lsqb3PotRENb5PRwaa/8n0/zuZ8EOGDKFCibGOEhFrLSOybTsJX7gyfTIvMKxWGhJ
 ohI4xWchODFQUHnaDOAq1a5rtYrm0KuVFtGhQYiB2q+V463HhFVuVcBRoB1mlW8R/KIkVGLQi
 PRBX6W4aM2exPJT5HzmVfI9uIrToDhcriCMub11qep6io9zBbC8fTf2LJtShJ+LXoDClVe/YK
 rwehOCwuKIdUfkkOFlpyWQeQBaopsjQ+tX4TPLwh7IU31y+GaVRB7cq4M5pl0YdPICTRmGF0D
 1jNS9oQjrDZ/hVk40gfvWX6Lx2dZZzmZQZBGL4QwBbUPJsJMmnA1CH4jG6QCGYzjZdFZ1rA4S
 ykFWx6TcO1bi7bz68N82L+TMc7T8ji1CQFLM6cqjvp10EiFv9KKAeD4i1tSM06YSzYgAoFIb8
 iDAJ5DUyy0p/FYC7x8tBUt7/CkVj3Qeyxka+N/dGQMeTf/CPeIERC5Mzo/XKzcBDvIAy4mFKP
 oaX9b13zlrdhHT/tH+eztapLeM5b7NEo8naoddhkPNvEVgXDsigd5PM+nl+sYLjI7EF6o2UD8
 TxkSbGxGMcf3ZWzRtxwNzJIy0woWDRPLPS1F4gwC+cMcCspHJUQh/SSHx8PnwKZVYU5czvXhA
 CN6pTVnu/ixjvgi7W0SgrVwFu+nNYycx31kNz2ZsUIJcmxwBLF7DTxxNQ/nistdWGYqOvIPww
 /NMJF1k8ok/Z9HtheUaHhZBw6Q1miiKdsi0N6wwM2GGpY9GevY43vZdpcuL6V+s+/Z2TD5XK2
 mkFLOYwjx3eEs04/NG9MM5S1Q1cnNLr7295F3Jhr5cWiMa85rlRYKcyzWCzKjzgO9E2hNU4Qh
 mbpCaDa0e2BYMIQxD58r9XqaeuUSteChdniFPJwZRfyES+EFaubRDYwOg0HXHrican4qePjvA
 4nE3iQKcNMtAIpBtYqM2LC4DLGrEDvg3D7NY7n0KdwRAuj8GuXIYBooAqObAuVk/3A31JCS9v
 CjZVT4f9/xWMt2mYNBoQjX7+Mp1iWk981bIYOkNDbD/D3YVDRJTnkLq6YGa0i+aDl5N2J4RoO
 AML+Yo4VOtsjVzp1o4DhHWSpw2ge85ei2SWrEq7ufgO74ZSZ6hVuriRwzQd9GEMesSEeWuBi5
 qszanWtSY4kpwdwY+SZ/pfLCjM
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 56345
Cc: 56345 <at> debbugs.gnu.org, Thuna <thuna.cing@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

Lars Ingebrigtsen <larsi@HIDDEN> writes:

> I don't understand what you mean here.  That two modes that don't use
> tabulated-list don't offer this functionality seems somewhat irrelevant?

They provide a different way to solve the same task (views; restricting
displayed columns) - that's why I ask if tabulated-list should implement
this functionality, additionally or alternatively, since it's very
similar.

Michael.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#56345; Package emacs. Full text available.

Message received at 56345 <at> debbugs.gnu.org:


Received: (at 56345) by debbugs.gnu.org; 7 Sep 2022 15:35:24 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Sep 07 11:35:24 2022
Received: from localhost ([127.0.0.1]:55862 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oVx5E-0003Ec-Jt
	for submit <at> debbugs.gnu.org; Wed, 07 Sep 2022 11:35:24 -0400
Received: from mx0b-00069f02.pphosted.com ([205.220.177.32]:52996)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <drew.adams@HIDDEN>) id 1oVx5B-0003ER-48
 for 56345 <at> debbugs.gnu.org; Wed, 07 Sep 2022 11:35:19 -0400
Received: from pps.filterd (m0246630.ppops.net [127.0.0.1])
 by mx0b-00069f02.pphosted.com (8.17.1.5/8.17.1.5) with ESMTP id 287EmqrU017275;
 Wed, 7 Sep 2022 15:35:16 GMT
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com;
 h=from : to : cc :
 subject : date : message-id : references : in-reply-to : content-type :
 content-transfer-encoding : mime-version; s=corp-2022-7-12;
 bh=29k3wQvg0uoHK58dDdpzhpUiqzwhLQvWvON8Aw/tR9o=;
 b=sy9Ya0njj+llD+TEed4wbdhl0Pbo1A5268YXcUlH9k7gs3QUFWc/iPnIyEuQWBZwPGdD
 9SCVp2o+IxcJ+0wly+hoiM6DpWy4A3vESSulkIqFysVzzfqCURQiCzkI8wTItQMFr+2d
 fV+SoVDcPN1ZxvCKUI6nZEPKa0QWmZ0nvaaI/TrFEPaQy8CghSo3eAITbzyYRQwIWp0K
 kJrK3aAi9Bsx1R07pFKpKoQm9+Ur+BVIdSkOaESifBg3DO+/ubigxEot2IiwDvO0lE68
 W6lzI5rXuVdZZgLaeYCKJ9aETPPyt1lzOWtS/1KAMlsgDNC9H5c9z+wTaWeF56iFAI48 fw== 
Received: from phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com
 (phxpaimrmta03.appoci.oracle.com [138.1.37.129])
 by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3jbwbc942y-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Wed, 07 Sep 2022 15:35:16 +0000
Received: from pps.filterd
 (phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1])
 by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.5/8.17.1.5)
 with ESMTP id 287E2Jlb022675; Wed, 7 Sep 2022 15:35:14 GMT
Received: from nam11-bn8-obe.outbound.protection.outlook.com
 (mail-bn8nam11lp2168.outbound.protection.outlook.com [104.47.58.168])
 by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id
 3jbwc4aw0d-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);
 Wed, 07 Sep 2022 15:35:14 +0000
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=ePzLNUV8w/T7MpL1ypuAPW5kYHnK6m1Zry5kcq+THemARK/LOJV+EvbSLyS2n9wHC4VWtcOvRj0xU0JqPxs3d0QWXOh5c9tT2hr4F7D9fTC6YjKVDna+7gOzaHw5GNSYFoPFP64Xc54Z5boPTn0MecjDpVC0dQYtrXjD4u/nNiRy2eq7eS/wO/zTfiB1nDB940lQF0XtJqf/0DzagQ/RgjllY95+gXdpkBK5mVfG1ijUQJ6V7rI2ohx9EvwTC3BFf3rr0V0+BpgEvFx4hTdQcaJQpzVU/ET9smzbwHdD3A4zRxaMuJINxtlYftNOXO2/74JfOpzcowIgrD+nIulQIA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; 
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=29k3wQvg0uoHK58dDdpzhpUiqzwhLQvWvON8Aw/tR9o=;
 b=DA6Mzf6XYg4J/D6VIHs4Zi5gDszlL1uW0FibxXFqovNhXSIXh8j+ZVgFdk89fuMGPhVuCYSqlq4tG5NfK7XtBTh8BzWf2Q2k3ydXWT2g5VwrNpYixZzSzp8szuLVvsJ29B+4f8+UIlDu9p4z8dkgabZ1m3FErCBX99ntv8MBSI+qcw70vI9rCSdiQ0dlV6Fjr7Ox4dIBIsdD4JOKOq/P/vhn0vuXZ2L2sR/GzUOa1CZbUzLEgNZbwyvjMNE8KLf9MV2NjpZouPg9tepqXvdjjb5GzrA2rEByqpcDR7Nm6mzQ+QBYjzGEGv4rHXebEVg/pJS+LBztDoFkudmt3Hfo6w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com;
 dkim=pass header.d=oracle.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=29k3wQvg0uoHK58dDdpzhpUiqzwhLQvWvON8Aw/tR9o=;
 b=p/LJSZpHbOQKpN2J98FC1g5TV3qwuUcOfXQ67FXsIzEt2UJfj9WsRuYqCE1sx0fjw5XFs5jJMOE25uijZN7v/Cf4RNd3ELOPNKOdWDaV8sx/f4sWeYe5JR+4DdlOtbH086Dug7WzQ236Z6TpneKeHzFPt6d/XKk/LZgz8feTVZI=
Received: from SJ0PR10MB5488.namprd10.prod.outlook.com (2603:10b6:a03:37e::19)
 by MW4PR10MB5776.namprd10.prod.outlook.com (2603:10b6:303:180::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5588.16; Wed, 7 Sep
 2022 15:35:12 +0000
Received: from SJ0PR10MB5488.namprd10.prod.outlook.com
 ([fe80::570:ff21:c9e1:22f1]) by SJ0PR10MB5488.namprd10.prod.outlook.com
 ([fe80::570:ff21:c9e1:22f1%2]) with mapi id 15.20.5612.014; Wed, 7 Sep 2022
 15:35:12 +0000
From: Drew Adams <drew.adams@HIDDEN>
To: Lars Ingebrigtsen <larsi@HIDDEN>, Thuna <thuna.cing@HIDDEN>
Subject: RE: [External] : bug#56345: 29.0.50; [PATCH] Add column hiding to
 tabulated-list
Thread-Topic: [External] : bug#56345: 29.0.50; [PATCH] Add column hiding to
 tabulated-list
Thread-Index: AQHYwrdiF1EpBZrLzU2R5A6mAcQ5nq3UFenw
Date: Wed, 7 Sep 2022 15:35:12 +0000
Message-ID: <SJ0PR10MB548849D27BBBCF7965B38868F3419@HIDDEN>
References: <87r134ihdd.fsf@HIDDEN> <877d4vfrzu.fsf@HIDDEN>
 <87bkrtzkgm.fsf_-_@HIDDEN> <875yi1iof9.fsf@HIDDEN>
 <875yi0x1dd.fsf@HIDDEN> <87ilm0bo3y.fsf@HIDDEN>
 <87mtbbnyoc.fsf@HIDDEN>
In-Reply-To: <87mtbbnyoc.fsf@HIDDEN>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: SJ0PR10MB5488:EE_|MW4PR10MB5776:EE_
x-ms-office365-filtering-correlation-id: 03bca13c-495d-4e99-546a-08da90e68dfc
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: b8rITqBikGYHSwdu8CxSExKDl/oahhvYy41JYXHTzIDfsIScyYcJ5OR6eQNzp+J+Z4wKXsze9BswlqTWazw/cjuWXUBtqLshXzHggaVG14Zrxe5/puPGGVZWDqDhQ6idoLUPlHTwsEUI7jy+p18KLjYWkmEw3xEeHeBTeMddAymuC1OhbOOlhlR2stqpAqVn3RXs0+TrfBgH+wBwoMJYYQLszkBL52B9OvwgYeafyCCFkeE3kCvmPwfkjh+bNjETa3eGKqBw3JPBStH9TMbKAjJJ2rTO0ShHuIZTGphwvAZIn0h8deh/POny5wz9t0CxlNQFGi1reWVjkQrnF88dj1LuytfwyK21JPjO3ms43crHJHf8+NrxLPKlCddi8zWd5LC2BMk6UstNJyfvmrz4B9+BQHTmWOkRlOxt4jYVST9I0cPaQFzcGWIeBWtnRET++3VTKyXlMb/UYFseDVtxley4eEnkzti/tcLpTZDXqN9ZxtGCqk5iwHcPOY0MSujGDzqLxo36zaRQRTO5u6JDAkueNClrF6GbI2L7PaZn9HbE3wA9Z9gLuoqUgktC5W3L01zk4mIeAIJpqF03l7qQgnCQ/2k+XwPesbfBqroJ7XF3K4Ne5UKYVqDWlTsTtFkw7w1hw/Bn+T3z3WVpo9AUqC9uUjXUCV9/jY6fm8u8LPER66wyQ02GAtSQMfvwXrWxpQXE2hcC9ymzoTCkgKEC8oxGa6KrZwEe3Zw0Y6l4MJtEhszgLwTLLIzQg/uHi0Tygul9g8PcQ3YjxMne2OOkeA==
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:SJ0PR10MB5488.namprd10.prod.outlook.com; PTR:; CAT:NONE;
 SFS:(13230016)(346002)(39860400002)(396003)(376002)(136003)(366004)(66446008)(8676002)(71200400001)(64756008)(38100700002)(66946007)(66476007)(9686003)(26005)(7696005)(6506007)(66556008)(5660300002)(4326008)(122000001)(55016003)(110136005)(316002)(76116006)(2906002)(478600001)(33656002)(38070700005)(41300700001)(186003)(4744005)(8936002)(44832011)(52536014)(86362001)(83380400001);
 DIR:OUT; SFP:1101; 
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?c/hOlU7V/OKXqZnMU2SKVn0kmSeDsFIIXqb5P5nufId6rmI3Qn30LK7JDK7B?=
 =?us-ascii?Q?uXRAqau511gwAbIkKJIJkPr4cs6Myy3cIm42Uj+lp/vVU/Zuzaje1wg8pYQw?=
 =?us-ascii?Q?6lvHLVw7J04/DchmmszyEGUZOImlUevC0OYpnECAk08H460yEh324dJelyfJ?=
 =?us-ascii?Q?CctGVUKztMpoNiAdN9oZ0b2helKUBpgDoFagQLDrZyuo/OmWv8J38Wjcf84i?=
 =?us-ascii?Q?5+qk8hcnKJVaqQn3h4tkB64umuEIVHcZOCYBz46vhXiELLFsYqju17mK0A9w?=
 =?us-ascii?Q?oEVAyWiL6ODrB74dOwMKa9yay2RQfX+mP6m+AtZ6kNHN9n0AQ+G/5OpXOMai?=
 =?us-ascii?Q?OWBVshOkxH0UnSbRH3AHeBO1SfBF5Q6J+T2WW59VjfP+avv5jkA6d27TWNjP?=
 =?us-ascii?Q?P50Wzwzj79oAJtOfciHIndrok5Dds+dts9OH0d0d00cV0W2HizQmuuyaa/T0?=
 =?us-ascii?Q?ofjf9RPBoX7WYal6USd4NoDDmkU0b341DfC3AreXooygK4Vr+TK8vViUS1fg?=
 =?us-ascii?Q?gSqTXII5GJHHrmN+AxmxM4xDGFvUEXheWk3ZCztJB6ipwKwSOEkOK/5e/nOP?=
 =?us-ascii?Q?7SOg3nk1LKThYPGLugF93MFpR9lGcXP+5WDImlD6/vBk4FvbAKSOXTqeqNBs?=
 =?us-ascii?Q?zwtsLpAyWdkh0cP+XJ3o16zOnlTugPNoDNYnuB4YdJaBEKx/MEhv2ISqUVCN?=
 =?us-ascii?Q?Y89A8aNdBNX8BZpWXrLL2JRaJejp5m7c/bLKVrGEJNvW48hdpXZRGKSVDFs+?=
 =?us-ascii?Q?EM5zN3E7yNZBjc8RVmbEKBs68BTuHkDsVWzAuUtYfzc2+wGm15PkHnb5GOIt?=
 =?us-ascii?Q?gIN5ENnbIZjb8zGH5lWv3f9+9I0flVA9BaJyHbO5zrsUwzA3bsMR5VwvypRi?=
 =?us-ascii?Q?LC+myMZSJpYFHrHyzY4TRmSabvyWNVU/Y8900ZoSpyCWiWLDbPq9bw6ZDELN?=
 =?us-ascii?Q?j0f8+dTHuVnK1ndoH27NknelPP7qVS+D56+h5PhWYvhBV9anKy2FAxGQG6UZ?=
 =?us-ascii?Q?4tiFfDfXGhQQ2o0HmYjrdaaowQYs0vOR1c/hGFeWbgcyRKUpUCPdcQ5Ev28y?=
 =?us-ascii?Q?Z5Z/CXjMDpO04gi0EOL3I/smogAP33zrYadMR+If1sYvEUXTzAwm+4bFaorZ?=
 =?us-ascii?Q?9JpJQDlWWLuzuexlw5dBC9AwEXJzKook4/IPkleQ/uyvn5yhJmIkmYoI/8ha?=
 =?us-ascii?Q?8z7+tW9DAkukyKceYnEue3NhzbSrvVVFxavZD+g/BWbzsLjpWA9PliT0p8Jz?=
 =?us-ascii?Q?ALgY71/NtFmM8eueDlrAHT2I1Xk56wsqbUmnn6qs6oOs6mIufz1xIkdrn0R0?=
 =?us-ascii?Q?uVPq0etjMBm4qbXenyQw3gYPAaiKBzmTJv4j44rY5tc2WD8U2dfQBs0JitF1?=
 =?us-ascii?Q?oj+1LfT3sBMqUyQccRAkVFWZ4iqblgwTnTkDkESBwhbLoYNQqXTwW6JXLMZp?=
 =?us-ascii?Q?kbgWLKubGPD8k8BDbaiAtr+0A+8JjSi2xCBQXtCwdy7ZwwpNBA0HqJ/GkRJG?=
 =?us-ascii?Q?BkBdzPR7Vdvpya5KtbsSiooXopFsypsTIBfpowgXekUgx6s0JznBsMqj8eWE?=
 =?us-ascii?Q?jGFFSds2JURmpHAcfSeyOaHe7fBo9hGfbvkQQi2w?=
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-OriginatorOrg: oracle.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: SJ0PR10MB5488.namprd10.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 03bca13c-495d-4e99-546a-08da90e68dfc
X-MS-Exchange-CrossTenant-originalarrivaltime: 07 Sep 2022 15:35:12.4723 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: IQ2uxFyWGnO/on00cnj+KHMYF3YgAZdHO/3ykLtuePqZ+4nB7EIcIlqUnvkyf3Aobit0X6qq8a2D1MH5Jg2g4A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR10MB5776
X-Proofpoint-Virus-Version: vendor=baseguard
 engine=ICAP:2.0.205,Aquarius:18.0.895,Hydra:6.0.528,FMLib:17.11.122.1
 definitions=2022-09-07_08,2022-09-07_02,2022-06-22_01
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0
 adultscore=0 malwarescore=0
 mlxscore=0 phishscore=0 mlxlogscore=999 suspectscore=0 bulkscore=0
 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2207270000
 definitions=main-2209070060
X-Proofpoint-ORIG-GUID: HH_1geNY1987SFmQbCy0IF0VnbtlFj8U
X-Proofpoint-GUID: HH_1geNY1987SFmQbCy0IF0VnbtlFj8U
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 56345
Cc: "56345 <at> debbugs.gnu.org" <56345 <at> debbugs.gnu.org>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

> I doubt that many users would want to interactively
> want to remove a column from the current display.

(Not really following this thread... and not a real
fan of `tabulated-list-mode', which is anyway too
limited/restrictive...)

Why the doubt?

Of course some users would sometimes want to
interactively remove a column from the current
display.  Why wouldn't they?  That seems like a
no-brainer to me.  Think Dired/ls, or the bookmark
list (toggle showing file names). =20

Why would users want to be able to sort columns
but not also be able to move them around or
hide/remove them, including interactively?

OK, you said "many users".  There's room for lots
of doubt about anything in Emacs, if the qualifier
"many" is applied.  Whether being able to hide
columns interactively is a useful feature for
Emacs to add shouldn't depend on whether "many"
users would likely use it.  Not if someone is
willing to add that feature.  Why not?




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#56345; Package emacs. Full text available.

Message received at 56345 <at> debbugs.gnu.org:


Received: (at 56345) by debbugs.gnu.org; 7 Sep 2022 12:53:10 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Sep 07 08:53:10 2022
Received: from localhost ([127.0.0.1]:53948 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oVuYH-0002iY-Vg
	for submit <at> debbugs.gnu.org; Wed, 07 Sep 2022 08:53:10 -0400
Received: from quimby.gnus.org ([95.216.78.240]:41620)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <larsi@HIDDEN>) id 1oVuYF-0002iA-P8
 for 56345 <at> debbugs.gnu.org; Wed, 07 Sep 2022 08:53:08 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org;
 s=20200322; h=Content-Type:MIME-Version:Message-ID:Date:References:
 In-Reply-To:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding:
 Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender:
 Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:
 List-Subscribe:List-Post:List-Owner:List-Archive;
 bh=8p5BNNSPVhLBOeQPzjJkkav6SZnDs7Rd+siUYCsmV+k=; b=R69uSNgtR6JLgs7bxnIA7IRR/p
 rg857U6/384zOp5tKWmTXetXKLU9tVkvEbNU6N+9i6EnaFDI6eughiAjcqEeu761rm2XnPfE9/9z3
 7VP7EFX5hzVoPdUf+GjYS/UqSBiFT9KyYao1mLELHIGVTVQ9egbhaJf4fDnB3U1Jl2Uc=;
Received: from [84.212.220.105] (helo=joga)
 by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.92) (envelope-from <larsi@HIDDEN>)
 id 1oVuY8-0006sZ-1g; Wed, 07 Sep 2022 14:53:02 +0200
From: Lars Ingebrigtsen <larsi@HIDDEN>
To: Thuna <thuna.cing@HIDDEN>
Subject: Re: bug#56345: 29.0.50; [PATCH] Add column hiding to tabulated-list
In-Reply-To: <87leqv8i1l.fsf@HIDDEN> (Thuna's message of "Wed, 07 Sep 2022
 14:50:46 +0200")
References: <87r134ihdd.fsf@HIDDEN> <877d4vfrzu.fsf@HIDDEN>
 <87bkrtzkgm.fsf_-_@HIDDEN> <875yi1iof9.fsf@HIDDEN>
 <875yi0x1dd.fsf@HIDDEN> <87ilm0bo3y.fsf@HIDDEN>
 <87mtbbnyoc.fsf@HIDDEN> <87leqv8i1l.fsf@HIDDEN>
Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwAgMAAAAqbBEUAAAABGdBTUEAALGPC/xhBQAAACBj
 SFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACVBMVEWhlEBJRSr////o
 CFXIAAAAAWJLR0QCZgt8ZAAAAAlwSFlzAAABLAAAASwAc4jpUgAAAAd0SU1FB+YJBhYCMCj24n4A
 AADgSURBVCjPdZLRCgQhCEUVxneD/J+CejfI//+VtWxmdx9GmMHDvZlKAO+BdqKcXG/4U9AUqDEt
 oF+F0r/tR3kFfAXg0Ut5musi30Yzj6/CYz4CjJ7KA/XqkWxI0h+lpbTu4OXFBmukAL4AJwNyO6Db
 vsA/5QMrSI/trvoDDNz4htZS1kgzSascgF0HVw24xGQ03b1zrdV6juGv7OvIqe4Ta0E6B22lqBjV
 HqWzFDSxPQNQ8Q3aPNvz7Yhp1XONhwSg22xaiQ6WQoanUS8gdmz+p/UaQvBbux+7h55kou9v6gPB
 V0n+mfEx0AAAAFplWElmTU0AKgAAAAgABQESAAMAAAABAAEAAAEaAAUAAAABAAAASgEbAAUAAAAB
 AAAAUgEoAAMAAAABAAEAAAITAAMAAAABAAEAAAAAAAAAAAEsAAAAAQAAASwAAAABYCqauwAAACV0
 RVh0ZGF0ZTpjcmVhdGUAMjAyMi0wOS0wNlQyMjowMjo0NyswMDowMGs0yuQAAAAldEVYdGRhdGU6
 bW9kaWZ5ADIwMjItMDktMDZUMjI6MDI6NDcrMDA6MDAaaXJYAAAAF3RFWHRleGlmOllDYkNyUG9z
 aXRpb25pbmcAMawPgGMAAAAASUVORK5CYII=
X-Now-Playing: 15 16 17 - =?utf-8?B?4oCYRW1vdGlvbuKAmQ==?= (Dennis Bovell
 Remix) (Exclusive
 remix)'s _Late Night Tales: Version Excursions (Selected By Don Letts)_:
 "Originally recorded by Samantha Sang"
Date: Wed, 07 Sep 2022 14:52:59 +0200
Message-ID: <87v8pzmjmc.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 @@CONTACT_ADDRESS@@ for details.
 Content preview: Thuna <thuna.cing@HIDDEN> writes: > I can't claim to know
 how many people would want it, but I can give an > example of when it's useful:
 In the specific package I wrote this patch > for, I list information about
 youtube videos. The c [...] 
 Content analysis details:   (-2.9 points, 5.0 required)
 pts rule name              description
 ---- ---------------------- --------------------------------------------------
 -1.0 ALL_TRUSTED            Passed through trusted hosts only via SMTP
 -1.9 BAYES_00               BODY: Bayes spam probability is 0 to 1%
 [score: 0.0000]
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 56345
Cc: 56345 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Thuna <thuna.cing@HIDDEN> writes:

> I can't claim to know how many people would want it, but I can give an
> example of when it's useful: In the specific package I wrote this patch
> for, I list information about youtube videos.  The columns `channel ID'
> and `video ID' are vital, but usually unnecessary and take space.  I
> have these set in `tabulated-list-format' as hidden by default, so that
> the user can choose to see them if they wish to.  Using this, I have to
> query for the videos only once, and then tabulated-list-mode decides
> what it wants to display on its own.

Oh, OK, that makes sense.  Then I think this sounds like a good
addition (but we have to wait for the assignment to be processed to
apply the patch).





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#56345; Package emacs. Full text available.

Message received at 56345 <at> debbugs.gnu.org:


Received: (at 56345) by debbugs.gnu.org; 7 Sep 2022 12:50:58 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Sep 07 08:50:58 2022
Received: from localhost ([127.0.0.1]:53921 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oVuWA-0002d2-5T
	for submit <at> debbugs.gnu.org; Wed, 07 Sep 2022 08:50:58 -0400
Received: from mail-ed1-f42.google.com ([209.85.208.42]:43761)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <thuna.cing@HIDDEN>) id 1oVuW7-0002cp-SY
 for 56345 <at> debbugs.gnu.org; Wed, 07 Sep 2022 08:50:56 -0400
Received: by mail-ed1-f42.google.com with SMTP id a70so3396720edf.10
 for <56345 <at> debbugs.gnu.org>; Wed, 07 Sep 2022 05:50:55 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112;
 h=mime-version:message-id:date:references:in-reply-to:subject:cc:to
 :from:from:to:cc:subject:date;
 bh=XL9ULHwsHuCjhXsrb2ZzPd6Lc8qUOjOA6axJCpOK3G8=;
 b=iuvwZtqc5EmN2DHdGfrTtBZH4775yqYGqGSWaqWR/BtHhlMUYsXbuyInW8lnvuOXAJ
 JMGFG3R/LwunP20mo52IWTaJOy/cM8y3njejl+/vjP3e9m8DfUhN7mWNJsnHGo3D3rww
 sYkxdfIg1Se2bFuFpGbzSHKrocHvA2MjgL3J/ZOYfmn8S/eX+dYAoD5THOWLsY/6+txz
 CUxj7vCh04ZH9MN5p0il3JZkJ73X0txsqp9E0G6KMU3xQKKi6EIvtCsN9SCKIMJfe6pk
 VLjhYO1Zy8BojSfV6XoZAbknz6UqPFWwFsAiQ2mR+/9ST7mDzMBUk6OT5hDhjTUVdu+s
 mhYQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=mime-version:message-id:date:references:in-reply-to:subject:cc:to
 :from:x-gm-message-state:from:to:cc:subject:date;
 bh=XL9ULHwsHuCjhXsrb2ZzPd6Lc8qUOjOA6axJCpOK3G8=;
 b=IvKpHTRx/L6O4CmXT6Yy2J9nBvvz1mv3eQo+IArxqoJ7GsZFjWr24uYh/Z7LCuNeQd
 PWmnG/MajL6l9xYxZdgfLO0yew2TtIdcF9I9EyLsA/EUEeIE+MeR4yrvQNKMZXZeWG79
 ie9JPWbOQA8rrQR3HdFYZ9L5EwWnANFOXo1gUVkPm7B/S5WB7Fpy8oWdNRke5Ibstljl
 JtMbKCtWDH/U12IDuu99rbEBBPcfiTyc8GUKmFkIfIXQR8lxUeZBIBcS5rQ9zL9n7pi2
 mMcd5J4/VoST9xDT1Wrp1H8IXbabWGqU1SQn9LqxnlQU/tVMlqdHMiVah/qyOqQBDdJm
 qlYw==
X-Gm-Message-State: ACgBeo2xEPOlaC/VmmqWPXCM8V6f+wnrG0hABU5Fcaitooi/Unq7nLHT
 GeOWwdkM4osQel1HmcgcOge79jCAaH4=
X-Google-Smtp-Source: AA6agR7cEjF9xk3LLGkxrdfv4I2kzcdgwl+PG0/kItiZXnzsLaWjjLt1mL4P35bdFQ+aRAChH4dbuA==
X-Received: by 2002:a05:6402:1044:b0:44d:925c:41bb with SMTP id
 e4-20020a056402104400b0044d925c41bbmr3012645edu.245.1662555049635; 
 Wed, 07 Sep 2022 05:50:49 -0700 (PDT)
Received: from thuna ([90.147.71.241]) by smtp.gmail.com with ESMTPSA id
 k11-20020a50cb8b000000b00447e5983478sm10469248edi.76.2022.09.07.05.50.47
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 07 Sep 2022 05:50:48 -0700 (PDT)
From: Thuna <thuna.cing@HIDDEN>
To: Lars Ingebrigtsen <larsi@HIDDEN>
Subject: Re: bug#56345: 29.0.50; [PATCH] Add column hiding to tabulated-list
In-Reply-To: <87mtbbnyoc.fsf@HIDDEN>
References: <87r134ihdd.fsf@HIDDEN> <877d4vfrzu.fsf@HIDDEN>
 <87bkrtzkgm.fsf_-_@HIDDEN> <875yi1iof9.fsf@HIDDEN>
 <875yi0x1dd.fsf@HIDDEN> <87ilm0bo3y.fsf@HIDDEN>
 <87mtbbnyoc.fsf@HIDDEN>
Date: Wed, 07 Sep 2022 14:50:46 +0200
Message-ID: <87leqv8i1l.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 56345
Cc: 56345 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

> OK, I can understand this as being used in a setup function -- but I
> doubt that many users would want to interactively want to remove a
> column from the current display.

I can't claim to know how many people would want it, but I can give an
example of when it's useful: In the specific package I wrote this patch
for, I list information about youtube videos.  The columns `channel ID'
and `video ID' are vital, but usually unnecessary and take space.  I
have these set in `tabulated-list-format' as hidden by default, so that
the user can choose to see them if they wish to.  Using this, I have to
query for the videos only once, and then tabulated-list-mode decides
what it wants to display on its own.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#56345; Package emacs. Full text available.

Message received at 56345 <at> debbugs.gnu.org:


Received: (at 56345) by debbugs.gnu.org; 7 Sep 2022 12:42:38 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Sep 07 08:42:38 2022
Received: from localhost ([127.0.0.1]:53851 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oVuO6-0002La-0o
	for submit <at> debbugs.gnu.org; Wed, 07 Sep 2022 08:42:38 -0400
Received: from quimby.gnus.org ([95.216.78.240]:41450)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <larsi@HIDDEN>) id 1oVuO4-0002LB-Gn
 for 56345 <at> debbugs.gnu.org; Wed, 07 Sep 2022 08:42:36 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org;
 s=20200322; h=Content-Type:MIME-Version:Message-ID:Date:References:
 In-Reply-To:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding:
 Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender:
 Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:
 List-Subscribe:List-Post:List-Owner:List-Archive;
 bh=oNvbTnmdomL/kOl7KQaw7ivyhoGX9A2YCxWXQe3kEXY=; b=uQlZymdv5tlHzBul7WlA6X6AVO
 x5mH1XxubvMg68Rnw4BSKv/QSUIA8w2N5pNqQN4oRqhoHTKMxeGGR0m705zCvRV1sik46UpP9qqjK
 RhwTMB+t8xWBk/K/r7dcLt9kj82U9P7m799XzKiDtivoBRWgylHARa/FLa/iWJiCD+9c=;
Received: from [84.212.220.105] (helo=joga)
 by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.92) (envelope-from <larsi@HIDDEN>)
 id 1oVuNw-0006nb-HY; Wed, 07 Sep 2022 14:42:30 +0200
From: Lars Ingebrigtsen <larsi@HIDDEN>
To: Thuna <thuna.cing@HIDDEN>
Subject: Re: bug#56345: 29.0.50; [PATCH] Add column hiding to tabulated-list
In-Reply-To: <87ilm0bo3y.fsf@HIDDEN> (Thuna's message of "Tue, 06 Sep 2022
 15:59:13 +0200")
References: <87r134ihdd.fsf@HIDDEN> <877d4vfrzu.fsf@HIDDEN>
 <87bkrtzkgm.fsf_-_@HIDDEN> <875yi1iof9.fsf@HIDDEN>
 <875yi0x1dd.fsf@HIDDEN> <87ilm0bo3y.fsf@HIDDEN>
Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwAgMAAAAqbBEUAAAABGdBTUEAALGPC/xhBQAAACBj
 SFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACVBMVEWhlEBJRSr////o
 CFXIAAAAAWJLR0QCZgt8ZAAAAAlwSFlzAAABLAAAASwAc4jpUgAAAAd0SU1FB+YJBhYCMCj24n4A
 AADgSURBVCjPdZLRCgQhCEUVxneD/J+CejfI//+VtWxmdx9GmMHDvZlKAO+BdqKcXG/4U9AUqDEt
 oF+F0r/tR3kFfAXg0Ut5musi30Yzj6/CYz4CjJ7KA/XqkWxI0h+lpbTu4OXFBmukAL4AJwNyO6Db
 vsA/5QMrSI/trvoDDNz4htZS1kgzSascgF0HVw24xGQ03b1zrdV6juGv7OvIqe4Ta0E6B22lqBjV
 HqWzFDSxPQNQ8Q3aPNvz7Yhp1XONhwSg22xaiQ6WQoanUS8gdmz+p/UaQvBbux+7h55kou9v6gPB
 V0n+mfEx0AAAAFplWElmTU0AKgAAAAgABQESAAMAAAABAAEAAAEaAAUAAAABAAAASgEbAAUAAAAB
 AAAAUgEoAAMAAAABAAEAAAITAAMAAAABAAEAAAAAAAAAAAEsAAAAAQAAASwAAAABYCqauwAAACV0
 RVh0ZGF0ZTpjcmVhdGUAMjAyMi0wOS0wNlQyMjowMjo0NyswMDowMGs0yuQAAAAldEVYdGRhdGU6
 bW9kaWZ5ADIwMjItMDktMDZUMjI6MDI6NDcrMDA6MDAaaXJYAAAAF3RFWHRleGlmOllDYkNyUG9z
 aXRpb25pbmcAMawPgGMAAAAASUVORK5CYII=
X-Now-Playing: Yasushi Ide - =?utf-8?Q?=E2=80=98Ain't?= No =?utf-8?Q?Sunsh?=
 =?utf-8?Q?ine=E2=80=99?= (Space Dub Mix) (Exclusive
 remix)'s _Late Night Tales: Version Excursions (Selected By Don Letts)_:
 "Originally recorded by Bill Wit"
Date: Wed, 07 Sep 2022 14:42:27 +0200
Message-ID: <87mtbbnyoc.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 @@CONTACT_ADDRESS@@ for details.
 Content preview: Thuna <thuna.cing@HIDDEN> writes: > It's mostly a quality
 of life improvement. Horizontal scrolling is a > mess (or at least I can't
 manage it), and you don't always need to see > all of the columns, so adding
 a way for the user to co [...] 
 Content analysis details:   (-2.9 points, 5.0 required)
 pts rule name              description
 ---- ---------------------- --------------------------------------------------
 -1.0 ALL_TRUSTED            Passed through trusted hosts only via SMTP
 -1.9 BAYES_00               BODY: Bayes spam probability is 0 to 1%
 [score: 0.0000]
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 56345
Cc: 56345 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Thuna <thuna.cing@HIDDEN> writes:

> It's mostly a quality of life improvement.  Horizontal scrolling is a
> mess (or at least I can't manage it), and you don't always need to see
> all of the columns, so adding a way for the user to control it seemed
> reasonable.  Also, when you add a filtering mechanism to your
> `tabulated-list-entries' function, some columns can end up redundant,
> this would make it convenient to manage situations like that.  (I would
> know; that's why I wrote it)

OK, I can understand this as being used in a setup function -- but I
doubt that many users would want to interactively want to remove a
column from the current display.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#56345; Package emacs. Full text available.

Message received at 56345 <at> debbugs.gnu.org:


Received: (at 56345) by debbugs.gnu.org; 7 Sep 2022 12:41:35 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Sep 07 08:41:35 2022
Received: from localhost ([127.0.0.1]:53831 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oVuN5-0002Ik-5I
	for submit <at> debbugs.gnu.org; Wed, 07 Sep 2022 08:41:35 -0400
Received: from quimby.gnus.org ([95.216.78.240]:41432)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <larsi@HIDDEN>) id 1oVuN3-0002IX-3f
 for 56345 <at> debbugs.gnu.org; Wed, 07 Sep 2022 08:41:33 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org;
 s=20200322; h=Content-Type:MIME-Version:Message-ID:Date:References:
 In-Reply-To:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding:
 Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender:
 Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:
 List-Subscribe:List-Post:List-Owner:List-Archive;
 bh=yo/ZuOD/98vGLaXtmb62cu2jYJ9WJlPn4PEVzKd/pSg=; b=UtweGCm4dSMudj08lT7r/G4aiP
 qfv6uJwL7VAcoEi4Z/MxTYoVkWeCOk6VIY13fPniaEsWEFajxjRn/sZu7UyjF8mBtgioXCx37nDKJ
 2vCwNnqTjoDxzIzjc8XA09oujNlcire7Mj79cayq0HqcTRw7TPVpUnQppjglK4B5OgPk=;
Received: from [84.212.220.105] (helo=joga)
 by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.92) (envelope-from <larsi@HIDDEN>)
 id 1oVuMu-0006nH-Pk; Wed, 07 Sep 2022 14:41:26 +0200
From: Lars Ingebrigtsen <larsi@HIDDEN>
To: Michael Heerdegen <michael_heerdegen@HIDDEN>
Subject: Re: bug#56345: 29.0.50; [PATCH] Add column hiding to tabulated-list
In-Reply-To: <87mtbb7tr9.fsf@HIDDEN> (Michael Heerdegen's message of "Wed, 07
 Sep 2022 05:23:06 +0200")
References: <87r134ihdd.fsf@HIDDEN> <877d4vfrzu.fsf@HIDDEN>
 <87bkrtzkgm.fsf_-_@HIDDEN> <875yi1iof9.fsf@HIDDEN>
 <875yi0x1dd.fsf@HIDDEN> <87ilm0bo3y.fsf@HIDDEN>
 <87mtbb7tr9.fsf@HIDDEN>
Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwAgMAAAAqbBEUAAAABGdBTUEAALGPC/xhBQAAACBj
 SFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACVBMVEWhlEBJRSr////o
 CFXIAAAAAWJLR0QCZgt8ZAAAAAlwSFlzAAABLAAAASwAc4jpUgAAAAd0SU1FB+YJBhYCMCj24n4A
 AADgSURBVCjPdZLRCgQhCEUVxneD/J+CejfI//+VtWxmdx9GmMHDvZlKAO+BdqKcXG/4U9AUqDEt
 oF+F0r/tR3kFfAXg0Ut5musi30Yzj6/CYz4CjJ7KA/XqkWxI0h+lpbTu4OXFBmukAL4AJwNyO6Db
 vsA/5QMrSI/trvoDDNz4htZS1kgzSascgF0HVw24xGQ03b1zrdV6juGv7OvIqe4Ta0E6B22lqBjV
 HqWzFDSxPQNQ8Q3aPNvz7Yhp1XONhwSg22xaiQ6WQoanUS8gdmz+p/UaQvBbux+7h55kou9v6gPB
 V0n+mfEx0AAAAFplWElmTU0AKgAAAAgABQESAAMAAAABAAEAAAEaAAUAAAABAAAASgEbAAUAAAAB
 AAAAUgEoAAMAAAABAAEAAAITAAMAAAABAAEAAAAAAAAAAAEsAAAAAQAAASwAAAABYCqauwAAACV0
 RVh0ZGF0ZTpjcmVhdGUAMjAyMi0wOS0wNlQyMjowMjo0NyswMDowMGs0yuQAAAAldEVYdGRhdGU6
 bW9kaWZ5ADIwMjItMDktMDZUMjI6MDI6NDcrMDA6MDAaaXJYAAAAF3RFWHRleGlmOllDYkNyUG9z
 aXRpb25pbmcAMawPgGMAAAAASUVORK5CYII=
X-Now-Playing: Yasushi Ide - =?utf-8?Q?=E2=80=98Ain't?= No =?utf-8?Q?Sunsh?=
 =?utf-8?Q?ine=E2=80=99?= (Space Dub Mix) (Exclusive
 remix)'s _Late Night Tales: Version Excursions (Selected By Don Letts)_:
 "Originally recorded by Bill Wit"
Date: Wed, 07 Sep 2022 14:41:24 +0200
Message-ID: <87r10nnyq3.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 @@CONTACT_ADDRESS@@ for details.
 Content preview:  Michael Heerdegen <michael_heerdegen@HIDDEN> writes: > The
 "why" is clear (to me), but not so much the "how". `proced' and > `ibuffer'
 for example (currently not based on tabulated-list, but they > are also table
 view modes) allow to define and switch b [...] 
 Content analysis details:   (-2.9 points, 5.0 required)
 pts rule name              description
 ---- ---------------------- --------------------------------------------------
 -1.0 ALL_TRUSTED            Passed through trusted hosts only via SMTP
 -1.9 BAYES_00               BODY: Bayes spam probability is 0 to 1%
 [score: 0.0000]
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 56345
Cc: 56345 <at> debbugs.gnu.org, Thuna <thuna.cing@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Michael Heerdegen <michael_heerdegen@HIDDEN> writes:

> The "why" is clear (to me), but not so much the "how".  `proced' and
> `ibuffer' for example (currently not based on tabulated-list, but they
> are also table view modes) allow to define and switch between certain
> views, but don't offer commands to explicitly select and delete columns.
>
> So the general idea (ability to leave columns out of the table) is
> surely useful, but which interface should be provided to get this is
> another question.

I don't understand what you mean here.  That two modes that don't use
tabulated-list don't offer this functionality seems somewhat irrelevant?




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#56345; Package emacs. Full text available.

Message received at 56345 <at> debbugs.gnu.org:


Received: (at 56345) by debbugs.gnu.org; 7 Sep 2022 10:38:02 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Sep 07 06:38:02 2022
Received: from localhost ([127.0.0.1]:53586 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oVsRW-0005RS-Ji
	for submit <at> debbugs.gnu.org; Wed, 07 Sep 2022 06:38:02 -0400
Received: from mail-ej1-f49.google.com ([209.85.218.49]:36752)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <thuna.cing@HIDDEN>) id 1oVsRV-0005Qw-2N
 for 56345 <at> debbugs.gnu.org; Wed, 07 Sep 2022 06:38:01 -0400
Received: by mail-ej1-f49.google.com with SMTP id lz22so8512531ejb.3
 for <56345 <at> debbugs.gnu.org>; Wed, 07 Sep 2022 03:38:01 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112;
 h=mime-version:message-id:date:subject:cc:to:from:from:to:cc:subject
 :date; bh=Vw6GftPMFC+uFVwW6Lm3MXttjQJCnMpHq5MLbtL2V5Q=;
 b=J2X/EInc0fucFYG8CI5alu7ktql40tP6QBzRmZjn5LR5E9d4ixI4dpNEoXTh/hqc+A
 WpxD2kpbkaisLPsD5C1+n+kxBJ3vmyIwnaocw8VYyDcY0Pw86211rYsPQFvqTVCoivCI
 LDxnCiI6HXWwWb7cAR1M6nr3L0LxGGHaylDlqvA75ez/lKD2DoqvpMa4LdfJoxAqVUWc
 G0/87ulkdO5DJIUOtYe2RC8UnQ1SehZ5aTsDnbu45gHHKSq/l8Nob19vPBB2oGveqNzI
 SsYmWxQ4M5XSJZd0g2z1B7tJ7UxwoQgdQWrSdZt1PbN++1SFkA0HSMiY/hsrEpS7i0Hi
 6fYA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=mime-version:message-id:date:subject:cc:to:from:x-gm-message-state
 :from:to:cc:subject:date;
 bh=Vw6GftPMFC+uFVwW6Lm3MXttjQJCnMpHq5MLbtL2V5Q=;
 b=N5Uyh1wy5MYPt8uVga0jPQpK9sUCe4lQFw8NyFWdkzk7olZ16IrUGBQfcZTM5sJsfy
 a+hN5IO5mBoVFHCoAGpB5zx8sK4+uFIJI8kkGBYrzI2Kp4a+Rxu4ztiaN+AKJvlL4LKo
 b4Th5+LKpj0/AMvymoFKclhppfjwI0nlkXrQWceA+hMz+x2oubA8JD+k6HbhmdbxI7Ac
 4PyMG9aIn4eAI07HSxPZir5iWPPPTqXNyb1Op1Lped1zJWJ3uGBxkMjdj8sZj1xeaoRt
 +MN/Hyn17PVI5eVGTmrkAgjpz4c7zr1H5hBmmu/dWhoQRTDWJ6tNFX0ZtFkUjXFoqnAx
 ALSQ==
X-Gm-Message-State: ACgBeo2f9Fgf0yBZVp9qd2oHXS/uYwfunv64pVd4ZIWQvocZFkjq8qym
 v9lZx2t5p2wESAJw918ze+AK1C62Z9Q=
X-Google-Smtp-Source: AA6agR7fMoApCiySyPMLzJiNuzLblONzWyRy42uIkQP01iVPmbRD4XVu3RsPi8xm6wYuAaOtuVbsxw==
X-Received: by 2002:a17:906:974a:b0:74f:e8b1:afbe with SMTP id
 o10-20020a170906974a00b0074fe8b1afbemr1921009ejy.38.1662547074832; 
 Wed, 07 Sep 2022 03:37:54 -0700 (PDT)
Received: from thuna ([193.205.22.48]) by smtp.gmail.com with ESMTPSA id
 h10-20020a1709060f4a00b0072af4af2f46sm8113301ejj.74.2022.09.07.03.37.52
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 07 Sep 2022 03:37:53 -0700 (PDT)
From: Thuna <thuna.cing@HIDDEN>
To: Michael Heerdegen <michael_heerdegen@HIDDEN>
Subject: Re: bug#56345: 29.0.50; [PATCH] Add column hiding to tabulated-list
Date: Wed, 07 Sep 2022 12:37:51 +0200
Message-ID: <87pmg7tqps.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 56345
Cc: 56345 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

> The "why" is clear (to me), but not so much the "how".  `proced' and
> `ibuffer' for example (currently not based on tabulated-list, but they
> are also table view modes) allow to define and switch between certain
> views, but don't offer commands to explicitly select and delete columns.

I don't know how `proced' and `ibuffer' specifically handles views, but
I don't think it is a good idea to put the burden on external packages
when tabulated-list is right there.  Especially since this leads to a
lot of (what I imagine to be) duplicated code across packages.

> So the general idea (ability to leave columns out of the table) is
> surely useful, but which interface should be provided to get this is
> another question.

I don't exactly understand what you mean by "interface".  Are you
referring to the package which should be responsible for managing
which columns are visible?




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#56345; Package emacs. Full text available.

Message received at 56345 <at> debbugs.gnu.org:


Received: (at 56345) by debbugs.gnu.org; 7 Sep 2022 03:23:17 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Sep 06 23:23:17 2022
Received: from localhost ([127.0.0.1]:53086 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oVlen-0000F8-18
	for submit <at> debbugs.gnu.org; Tue, 06 Sep 2022 23:23:17 -0400
Received: from mout.web.de ([212.227.15.3]:43427)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <michael_heerdegen@HIDDEN>) id 1oVlek-0000Eu-Tq
 for 56345 <at> debbugs.gnu.org; Tue, 06 Sep 2022 23:23:15 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=web.de;
 s=dbaedf251592; t=1662520987;
 bh=8p01/q+d9VWz59x8/pm2Ig7XYVqPinR1avikC4mLcVc=;
 h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date;
 b=koBfMMVcjI2MMoHQe0P9aQnWu+lIya+p4z8ecSC0Nt9TvGEm5vJhO74YqvzDUl5Yo
 clLK9Q6o4EpI+ECf7rOsUPM6+h4KNKy/NcDr5OZ7yVJFCBcSErvMatxuTed3aOYHsx
 SWGEAjDHL57uQHcLLff6pdiEQaX4lBrtymTxq2n8=
X-UI-Sender-Class: c548c8c5-30a9-4db5-a2e7-cb6cb037b8f9
Received: from drachen.dragon ([92.208.190.67]) by smtp.web.de (mrweb005
 [213.165.67.108]) with ESMTPSA (Nemesis) id 1MNwfU-1ogqPr2Uau-00OOe4; Wed, 07
 Sep 2022 05:23:07 +0200
From: Michael Heerdegen <michael_heerdegen@HIDDEN>
To: Thuna <thuna.cing@HIDDEN>
Subject: Re: bug#56345: 29.0.50; [PATCH] Add column hiding to tabulated-list
In-Reply-To: <87ilm0bo3y.fsf@HIDDEN> (Thuna's message of "Tue, 06 Sep 2022
 15:59:13 +0200")
References: <87r134ihdd.fsf@HIDDEN> <877d4vfrzu.fsf@HIDDEN>
 <87bkrtzkgm.fsf_-_@HIDDEN> <875yi1iof9.fsf@HIDDEN>
 <875yi0x1dd.fsf@HIDDEN> <87ilm0bo3y.fsf@HIDDEN>
Date: Wed, 07 Sep 2022 05:23:06 +0200
Message-ID: <87mtbb7tr9.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:pAABKsdcg8xo2bQia+srH+sbZKqxrgoCAivo9t67jotMRhySj/b
 h07tZljimP2QOYG/qjL4OJVZkg66lSSAn464uUNZSU2nIzjquZ3jytGQSToUmEmW7HKdCRa
 8ayLY8sMkgG1cMqz+1iFLr3oCVBu+otVceBNEdDL4r/gzZCjErnkCht9UAdwLWFBSeyjdtS
 px5SW3xzGuk45gid2sTxQ==
X-Spam-Flag: NO
X-UI-Out-Filterresults: notjunk:1;V03:K0:n8UAUsYiqO4=:HzsYTUVjeLLqPn98q9733c
 NJ+LhtsGigEpPas7yodEkQaOzdIwb+8rN/sSGRxlQPRuMGld8cqoq2TXwM0EC6bU0J1RWcn7I
 Yd3STe/VV1x4gcWziGGyN/8oKWV69fICDlSHEQAX5mPGcabbrhR1R8UEjeiXr6QhuMM50hCVC
 zn4mibFO+UPa4UVUXpFTW6RcQxZXaJfwsQuWsVgw0B50wVKfCOmFYxuruSIG+8abtPECmYgH4
 i0ahunMlqlTpy0pfiZyeHISfsBnmPeUSGVX4rTwcmwAQcBxk8DXxU95bnrNdBHUhZNy5fyo/P
 +yGlMjJXFUYYT6ISLk17/gnaLJTPY9/76FbYq3A8Vfe2l37CWnfFM9SHIkpBJYtnqyx9VB2nG
 JWB2Dgo2MBFbWKhziVGuhd8M8Rnyuwy4KRyKuhVPeRz+vVTVgdoJCZGoO+lD5MQhoCgS1oFaX
 dZ0L8q5ltt0u+fBP0fbCld61a9ii/KlRW9aO4Mp3EajUfbn/VyW12Fj6yMLmfek4k6wcQdcs0
 wOJ0GnYjtMcbeSvOTaLiMPVqnpqgGRz/TZUwnDDK7cB3A2jmXFu7ghsFsdfdt2/rPMDanXWed
 vc2Q2pUBBRwrnb4N+GMydqQ0tvV/mC9c4Ncgps12PSuS5Y/JXsjPNweqlUScJfTBQWqj3iBR1
 4T34gpz2/kpLSeOBfVgI3KBPS8zRejAvOhiccUkkLHSRtDmLGStqIcku2EkO+cD/RnbPY1hEY
 v97IMpTni3E9MbRIxyySwkpxB/PrVYQg4NZe2MS/JxH7RvuXVy98AofTEfiIA55hvSapLU0Hd
 JWwLzdQNEjCOHdYS+bg3mJyrkTF+jizEGXKlk6104nSZgPkJk6G2rpgaA2VtfN1T0QdCfdqzP
 JPK1xeDYt6yLJL8uQ3lSejhLq7pP4bDQgeCfSkypcLFxsDdC17cGTEm1cqtOWS7BmJWSt7Wty
 eAS/AfO5fgfX6T3ZxV/HR0G6w8407IDxms2p+zHMuN2tFrkGAe0LUB/EEJ1bMDMqyyUvCWkK6
 bYizVMZD63bYtiXkXKyFYKNUDO9tmeS4YuQuvEVyIeYAnmkP2SW3tVs6YTJbOg5wlTpMMKm4w
 H+SmhcWJ75IZSfQaYmOb/Kim2TcueGptpFvn+uJMiy+UOOJIbXtO67HkiVCofV49HVrbVGkVR
 K11oe5/5FUW3Ip+SPYVf36o/M9
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 56345
Cc: Lars Ingebrigtsen <larsi@HIDDEN>, 56345 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

Thuna <thuna.cing@HIDDEN> writes:

> > Thanks.  I've had a skim over the patch, and it seems reasonable to me.
> > (I haven't tried it, though.)  But what's the use case for this?  I
> > can't really remember ever wanting to hide a column in a tabulated-list
> > buffer.
>
> It's mostly a quality of life improvement.

The "why" is clear (to me), but not so much the "how".  `proced' and
`ibuffer' for example (currently not based on tabulated-list, but they
are also table view modes) allow to define and switch between certain
views, but don't offer commands to explicitly select and delete columns.

So the general idea (ability to leave columns out of the table) is
surely useful, but which interface should be provided to get this is
another question.

Michael.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#56345; Package emacs. Full text available.

Message received at 56345 <at> debbugs.gnu.org:


Received: (at 56345) by debbugs.gnu.org; 6 Sep 2022 13:59:26 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Sep 06 09:59:26 2022
Received: from localhost ([127.0.0.1]:52178 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oVZ6r-0001dn-UU
	for submit <at> debbugs.gnu.org; Tue, 06 Sep 2022 09:59:26 -0400
Received: from mail-ej1-f50.google.com ([209.85.218.50]:37555)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <thuna.cing@HIDDEN>) id 1oVZ6n-0001dQ-Gh
 for 56345 <at> debbugs.gnu.org; Tue, 06 Sep 2022 09:59:24 -0400
Received: by mail-ej1-f50.google.com with SMTP id nc14so23469120ejc.4
 for <56345 <at> debbugs.gnu.org>; Tue, 06 Sep 2022 06:59:21 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112;
 h=mime-version:message-id:date:references:in-reply-to:subject:cc:to
 :from:from:to:cc:subject:date;
 bh=aCgltKhVozZbBycMEK2fqngYrlfKlCii9OLMmwfY+bQ=;
 b=nBImJUmp9YZ0rWktKraHhGJuuY6hrmhZncAS7jNmvjf4HImiPo5WSmYljN84k4Y8fj
 i+F3LH/LGXYiJrbZopZvs7k75ak/mKVdvbiVSRDsFuP9fXLMsvi1NgBWEplaTv9IDJ50
 uT9j46q4yNrsRrncMpNqHjW3yEuz7QU3jdgn2ejhlthdUnms/Zuq6EZS0m0E+cseL5IH
 b4B5ZpSBfvZna6lzKuRG4wZ+Q8RODYRDO7SI+ykIadXuJ+CSFobLhX+aFRBStyvSdPJA
 qWHnB5KjUK1NTfp4jGVwJ6xrgjfVli3k4znIwEOMnMGJ81wf7Of34liB2GviYNdl4VZu
 SrNA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=mime-version:message-id:date:references:in-reply-to:subject:cc:to
 :from:x-gm-message-state:from:to:cc:subject:date;
 bh=aCgltKhVozZbBycMEK2fqngYrlfKlCii9OLMmwfY+bQ=;
 b=Xc5+GaM4GPzQ8V19AfON5XzFkMv9sX4ou5pzB0BsTZtE7glEw4xI7HZIAeg4S4iSzX
 NotQ/JwpPeoI7Q4qW4GfTkXRHuvF7nwc1G0SohUNn7NnhjB14Zr36rJhi2/Jq6Ga+REK
 4axvY3YJVC3mOb3unv9VU5iCz9FIZpLUfgl2zb4GMYeAIejzrlvPlymGpv5fN5UDWFfZ
 sNTi4+7MT5+Xxt8jeBO6Ag4v4M86HrP1P8VvtVMzWBoE2vBKhMKU2LLR6A5EV6snuIlf
 Qx7YZrGUQpdyJ26O5mWgeKDUp1/+uvAgfT5EZnK63RzHUsWTkSd+vf0SfBTStXH35WuY
 HvQg==
X-Gm-Message-State: ACgBeo0bUx18AROhDYYXNEJ10aUnjxF1rqxtsUWiNjVMn6wZzPNZSKNg
 djefkrsaohu1JpKIAO1qWeIFWGEfFU8=
X-Google-Smtp-Source: AA6agR5YnXiRWEXJ09/C1IPBvqjdppSxLaKd6qeJunvm7SYVtXEUOH7/BBHzfVWQ7y0r6lGC3GTa6Q==
X-Received: by 2002:a17:907:762c:b0:73d:e163:70cf with SMTP id
 jy12-20020a170907762c00b0073de16370cfmr34617197ejc.694.1662472755274; 
 Tue, 06 Sep 2022 06:59:15 -0700 (PDT)
Received: from thuna ([90.147.71.152]) by smtp.gmail.com with ESMTPSA id
 t10-20020a05640203ca00b0044604ad8b41sm3848130edw.23.2022.09.06.06.59.14
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 06 Sep 2022 06:59:14 -0700 (PDT)
From: Thuna <thuna.cing@HIDDEN>
To: Lars Ingebrigtsen <larsi@HIDDEN>
Subject: Re: bug#56345: 29.0.50; [PATCH] Add column hiding to tabulated-list
In-Reply-To: <875yi0x1dd.fsf@HIDDEN>
References: <87r134ihdd.fsf@HIDDEN> <877d4vfrzu.fsf@HIDDEN>
 <87bkrtzkgm.fsf_-_@HIDDEN> <875yi1iof9.fsf@HIDDEN>
 <875yi0x1dd.fsf@HIDDEN>
Date: Tue, 06 Sep 2022 15:59:13 +0200
Message-ID: <87ilm0bo3y.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 56345
Cc: 56345 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)


> Thanks.  I've had a skim over the patch, and it seems reasonable to me.
> (I haven't tried it, though.)  But what's the use case for this?  I
> can't really remember ever wanting to hide a column in a tabulated-list
> buffer.

It's mostly a quality of life improvement.  Horizontal scrolling is a
mess (or at least I can't manage it), and you don't always need to see
all of the columns, so adding a way for the user to control it seemed
reasonable.  Also, when you add a filtering mechanism to your
`tabulated-list-entries' function, some columns can end up redundant,
this would make it convenient to manage situations like that.  (I would
know; that's why I wrote it)




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#56345; Package emacs. Full text available.

Message received at 56345 <at> debbugs.gnu.org:


Received: (at 56345) by debbugs.gnu.org; 6 Sep 2022 10:07:23 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Sep 06 06:07:23 2022
Received: from localhost ([127.0.0.1]:49620 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oVVUJ-0008PP-3n
	for submit <at> debbugs.gnu.org; Tue, 06 Sep 2022 06:07:23 -0400
Received: from quimby.gnus.org ([95.216.78.240]:54702)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <larsi@HIDDEN>) id 1oVVUI-0008PC-2Q
 for 56345 <at> debbugs.gnu.org; Tue, 06 Sep 2022 06:07:22 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org;
 s=20200322; h=Content-Type:MIME-Version:Message-ID:Date:References:
 In-Reply-To:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding:
 Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender:
 Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:
 List-Subscribe:List-Post:List-Owner:List-Archive;
 bh=MGqwaXQiMJuwU0a5DO73TX6kIZ5O9KHWY4JslEcyxiU=; b=gNYU2sgLIjY52jq3/64u5Xocd+
 YTVKkrAFR+Le4ic7NtCLQTwf2pk/adMKWhxn++shEFDdrikJIR21tP3kvJ+D+5BeKYm2+XmdjovYW
 jeWwn7yEcOeN4M/lq4Rs28vzTAdskLPCxdV96IXQuz0nCoOdPdDL8I2jdHe7X5KBj4AY=;
Received: from [84.212.220.105] (helo=joga)
 by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.92) (envelope-from <larsi@HIDDEN>)
 id 1oVVU9-0003La-Au; Tue, 06 Sep 2022 12:07:15 +0200
From: Lars Ingebrigtsen <larsi@HIDDEN>
To: Thuna <thuna.cing@HIDDEN>
Subject: Re: bug#56345: 29.0.50; [PATCH] Add column hiding to tabulated-list
In-Reply-To: <875yi1iof9.fsf@HIDDEN> (Thuna's message of "Mon, 05 Sep 2022
 21:58:18 +0200")
References: <87r134ihdd.fsf@HIDDEN> <877d4vfrzu.fsf@HIDDEN>
 <87bkrtzkgm.fsf_-_@HIDDEN> <875yi1iof9.fsf@HIDDEN>
Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAABGdBTUEAALGPC/xhBQAAACBj
 SFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAD1BMVEVAODyLU2y8sKJj
 XVn////roTFOAAAAAWJLR0QEj2jZUQAAAAd0SU1FB+YJBgoCOUQWAM4AAAG9SURBVDjLjZJhsuQg
 CITJcIGgFxjxAiD3v9s2kszOS72tWn9ZfNrQANEvR4Yqxc9jZByqBVwe9AIuIv8JWruAPggiFxjS
 v4H4BoKPOvr3h/ohus9W2xgKOhL8JX4Bbe0LqPguwluV6ztHpilA/AQitn/YKnArDZGz/PBPMA/p
 W+oJtIB5WCuwU5zcIPQLyEEUiAeA+PEPYP4AOzvD8cTVOqMuDITyGQjnM9xcJxOxX6ANNnKAFDHs
 yfSqRcY2PGo0wfFmgJOgBeUju9Iwi44oURyCZjSm3ceWGzJSjBxRaDFS5Gm6oKUJDKkBgl6I9+gH
 PioflNUn2PPpAW00mgMKkp3ogel0Q8cYxt+ES/h2MmCy3ho3Y3xFa9L6CbtA0lGR3tuezm3naLC9
 9AMO0UnbALxVuCul5Q5VrWZU3Ec6QX6NPZR3xUfrcyHOkXYhPak2zBcyZe8xgx4vlHqt8ECBcOp9
 wTGWo+LIl5PJ5LwGLFd6JEOB2WOKk9ekfpc/8WDknRx69vrE6TVnbbsdWvuy66Xl18ZiiE58zciQ
 LvQGKOxuz5px/02pXkNVQ1w/Bw2x+z6+4pnjapxO/4rrH8e+jhhKVQreAAAAJXRFWHRkYXRlOmNy
 ZWF0ZQAyMDIyLTA5LTA2VDEwOjAyOjU2KzAwOjAwHdRRXgAAACV0RVh0ZGF0ZTptb2RpZnkAMjAy
 Mi0wOS0wNlQxMDowMjo1NiswMDowMGyJ6eIAAAAASUVORK5CYII=
X-Now-Playing: Devo's _Satisfaction (I Can't Get Me No)_: "Sloppy (I Saw My
 Baby Getting)"
Date: Tue, 06 Sep 2022 12:07:10 +0200
Message-ID: <875yi0x1dd.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 @@CONTACT_ADDRESS@@ for details.
 Content preview:  Thuna <thuna.cing@HIDDEN> writes: > This should be all
 the previous patches merged into a single one. Thanks. I've had a skim over
 the patch, and it seems reasonable to me. (I haven't tried it, though.) But
 what's the use case for this? I can't really remember ever wanting to hide
 a column in a tabula [...] 
 Content analysis details:   (-2.9 points, 5.0 required)
 pts rule name              description
 ---- ---------------------- --------------------------------------------------
 -1.0 ALL_TRUSTED            Passed through trusted hosts only via SMTP
 -1.9 BAYES_00               BODY: Bayes spam probability is 0 to 1%
 [score: 0.0000]
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 56345
Cc: 56345 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Thuna <thuna.cing@HIDDEN> writes:

> This should be all the previous patches merged into a single one.

Thanks.  I've had a skim over the patch, and it seems reasonable to me.
(I haven't tried it, though.)  But what's the use case for this?  I
can't really remember ever wanting to hide a column in a tabulated-list
buffer.

> I don't mind signing the papers, but I have a few questions about it,
> where do I send them?

copyright-clerk@HIDDEN is probably the right place to as questions.

But here's the form to get started, if you want to do the assignment:



Please email the following information to assign@HIDDEN, and we
will send you the assignment form for your past and future changes.

Please use your full legal name (in ASCII characters) as the subject
line of the message.
----------------------------------------------------------------------
REQUEST: SEND FORM FOR PAST AND FUTURE CHANGES

[What is the name of the program or package you're contributing to?]
Emacs

[Did you copy any files or text written by someone else in these changes?
Even if that material is free software, we need to know about it.]

[Do you have an employer who might have a basis to claim to own
your changes?  Do you attend a school which might make such a claim?]

[For the copyright registration, what country are you a citizen of?]

[What year were you born?]

[Please write your email address here.]

[Please write your postal address here.]

[Which files have you changed so far, and which new files have you written
so far?]




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#56345; Package emacs. Full text available.

Message received at 56345 <at> debbugs.gnu.org:


Received: (at 56345) by debbugs.gnu.org; 5 Sep 2022 19:58:35 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Sep 05 15:58:35 2022
Received: from localhost ([127.0.0.1]:49024 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oVIEs-0000tO-ES
	for submit <at> debbugs.gnu.org; Mon, 05 Sep 2022 15:58:35 -0400
Received: from mail-ej1-f42.google.com ([209.85.218.42]:44987)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <thuna.cing@HIDDEN>) id 1oVIEq-0000tC-Gw
 for 56345 <at> debbugs.gnu.org; Mon, 05 Sep 2022 15:58:33 -0400
Received: by mail-ej1-f42.google.com with SMTP id kk26so18906818ejc.11
 for <56345 <at> debbugs.gnu.org>; Mon, 05 Sep 2022 12:58:32 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112;
 h=mime-version:message-id:date:references:in-reply-to:subject:cc:to
 :from:from:to:cc:subject:date;
 bh=6aG83/RGOTwdh5vvG4JW36nRYOif/2mcJmGMz7cQp8Y=;
 b=EProwkrFuBxJYu2KaP4zmFWTqJ1j7I73mWBUE3h8RtJbi3bD7frpTVuKsBvrR169wj
 CT7eIRr+MRN3hRcU6hyz5FVMiyA8O/p90dzg7pPZlSsfVi3Y7TNkoxJ8X6dP5Y0q06PJ
 n54U1/9YtgiB+Q96PcE5mAsdVsAZPrp99UtMKAcxIV3Hj/Yfkdmb/HlYsbW5ddv6zBzF
 pa2uCcOXj39nsyIla2y4cTaiUtooEYPPetFJhpOxp97NSBLCGkki24XWGOh/qwyqxorw
 FDCoRIcmXaZlR/bhGGL6R9tGNrAGGk+lBI2ekS6dJqkx9DBVccC1YrR1RgHTprHUY4c/
 39Xw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=mime-version:message-id:date:references:in-reply-to:subject:cc:to
 :from:x-gm-message-state:from:to:cc:subject:date;
 bh=6aG83/RGOTwdh5vvG4JW36nRYOif/2mcJmGMz7cQp8Y=;
 b=jZ7GsewfcJfcp/5hKBvYVxyRqEss0pERLMADkmJ1xB8xn7MqOhT7gsN73w0h4c32Nn
 wXeKYDZ19GVZPFoN8C+3Jiu/z9PzKCsS+0nrcT7H4j+qX3OtG7EgczzvP2C6jxlrpYCV
 k+qcGUsH3fsdW+GFAxK1o31yiQAHwRzibKW5SuEKAkwKfUmDoCd4ilkcj8aOrGPPJgqs
 WpFDwHLzpwkcKVTjHO/ZIJ0TCICuoJP7zdKTFhWbLW3cIKXYm+vd2ZiR5E9rzRda4MCi
 fBn/+oER0UvCAEIkbLLw/RCOV9S8+E3n6LJPTfEVH9C7oUHDbhy77igABoqGcnlHOihO
 ftEQ==
X-Gm-Message-State: ACgBeo16746j4k4E5z9EKrMk13D8EBS40Be/a4dGLTrN1sgb2fC1MOsc
 srOC6NdOJFP/jDuRJgy8cxg7rQO4E3w=
X-Google-Smtp-Source: AA6agR5GPQtNSbQdzz258rmDl5wehjJCSse7e47to/+gD/A5lCYIu6S66xv6nvpMLsyV172IjO6h4Q==
X-Received: by 2002:a17:907:75dc:b0:730:9c68:9a2e with SMTP id
 jl28-20020a17090775dc00b007309c689a2emr38555783ejc.22.1662407906297; 
 Mon, 05 Sep 2022 12:58:26 -0700 (PDT)
Received: from thuna (eduroam-049.unibocconi.it. [90.147.70.49])
 by smtp.gmail.com with ESMTPSA id
 21-20020a170906301500b00738467f743dsm5393036ejz.5.2022.09.05.12.58.25
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 05 Sep 2022 12:58:25 -0700 (PDT)
From: Thuna <thuna.cing@HIDDEN>
To: Lars Ingebrigtsen <larsi@HIDDEN>
Subject: Re: bug#56345: 29.0.50; [PATCH] Add column hiding to tabulated-list
In-Reply-To: <87bkrtzkgm.fsf_-_@HIDDEN>
References: <87r134ihdd.fsf@HIDDEN> <877d4vfrzu.fsf@HIDDEN>
 <87bkrtzkgm.fsf_-_@HIDDEN>
Date: Mon, 05 Sep 2022 21:58:18 +0200
Message-ID: <875yi1iof9.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 56345
Cc: 56345 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--=-=-=
Content-Type: text/plain


This should be all the previous patches merged into a single one.  I
don't mind signing the papers, but I have a few questions about it,
where do I send them?


--=-=-=
Content-Type: text/x-patch
Content-Disposition: inline;
 filename=0001-Add-column-hiding-to-tabulated-list-mode.patch
Content-Description: single patch

From 2a5b5759de4d3acd0104cb1c9e9f75130f0c58e9 Mon Sep 17 00:00:00 2001
From: Thuna <thuna.cing@HIDDEN>
Date: Fri, 1 Jul 2022 18:19:52 +0300
Subject: [PATCH] Add column hiding to tabulated-list-mode

Add the keyword `:hidden' to `tabulated-list-format' for controlling
the visibility of a specific column.

Introduce the commands `tabulated-list-hide-current-column' and
`tabulated-list-make-column-visible' for interactively changing the
`:hidden' property of the column.  The commands are bound to "." and
"+" respectively.

Change calculations involving other columns to account for the
`:hidden' property.

Make the current column calculation into its own function named
`tabulated-list-get-column'.  Make `tabulated-list-widen-current-column'
use that instead. Use the text property `tabulated-list-column-name'
to find the current tabulated-list column instead of `current-column'.
---
 lisp/emacs-lisp/tabulated-list.el | 271 +++++++++++++++++-------------
 1 file changed, 151 insertions(+), 120 deletions(-)

diff --git a/lisp/emacs-lisp/tabulated-list.el b/lisp/emacs-lisp/tabulated-list.el
index 9868d8c4ec..a24b051d9c 100644
--- a/lisp/emacs-lisp/tabulated-list.el
+++ b/lisp/emacs-lisp/tabulated-list.el
@@ -104,7 +104,8 @@ tabulated-list-format
    Currently supported properties are:
    - `:right-align': If non-nil, the column should be right-aligned.
    - `:pad-right': Number of additional padding spaces to the
-     right of the column (defaults to 1 if omitted).")
+     right of the column (defaults to 1 if omitted).
+   - `:hidden': If non-nil, the column should not be visible.")
 (put 'tabulated-list-format 'permanent-local t)
 
 (defvar-local tabulated-list-use-header-line t
@@ -179,6 +180,11 @@ tabulated-list-get-entry
 no entry at POS.  POS, if omitted or nil, defaults to point."
   (get-text-property (or pos (point)) 'tabulated-list-entry))
 
+(defun tabulated-list-get-column (&optional pos)
+  "Return the column name of the Tabulated List cell at POS.
+POS, if omitted or nil, defaults to point."
+  (get-text-property (or pos (point)) 'tabulated-list-column-name))
+
 (defun tabulated-list-put-tag (tag &optional advance)
   "Put TAG in the padding area of the current line.
 TAG should be a string, with length <= `tabulated-list-padding'.
@@ -285,7 +291,7 @@ tabulated-list-init-header
           cols)
     (dotimes (n len)
       (let* ((col (aref tabulated-list-format n))
-             (not-last-col (< n (1- len)))
+             (not-last-col (tabulated-list--next-visible-column n))
 	     (label (nth 0 col))
              (lablen (length label))
              (pname label)
@@ -293,62 +299,64 @@ tabulated-list-init-header
 	     (props (nthcdr 3 col))
 	     (pad-right (or (plist-get props :pad-right) 1))
              (right-align (plist-get props :right-align))
+             (hidden (plist-get props :hidden))
              (next-x (+ x pad-right width))
              (available-space
               (and not-last-col
                    (if right-align
                        width
                      (tabulated-list--available-space width n)))))
-        (when (and (>= lablen 3)
-                   not-last-col
-                   (> lablen available-space))
-          (setq label (truncate-string-to-width label available-space
-                                                nil nil t)))
-	(push
-	 (cond
-	  ;; An unsortable column
-	  ((not (nth 2 col))
-	   (propertize label 'tabulated-list-column-name pname))
-	  ;; The selected sort column
-	  ((equal (car col) (car tabulated-list-sort-key))
-	   (apply 'propertize
-                  (concat label
-                          (cond
-                           ((and (< lablen 3) not-last-col) "")
-                           ((cdr tabulated-list-sort-key)
-                            (format " %c"
-                                    tabulated-list-gui-sort-indicator-desc))
-                           (t (format " %c"
-                                      tabulated-list-gui-sort-indicator-asc))))
-                  'face 'bold
-                  'tabulated-list-column-name pname
-                  button-props))
-	  ;; Unselected sortable column.
-	  (t (apply 'propertize label
-		    'tabulated-list-column-name pname
-		    button-props)))
-	 cols)
-        (when right-align
-          (let ((shift (- width (string-width (car cols)))))
-            (when (> shift 0)
-              (setq cols
-                    (cons (car cols)
-                          (cons
-                           (propertize
-                            (make-string shift ?\s)
-                            'display
-                            `(space :align-to
-                                    (+ header-line-indent-width ,(+ x shift))))
-                           (cdr cols))))
-              (setq x (+ x shift)))))
-	(if (>= pad-right 0)
-	    (push (propertize
-                   " "
-		   'display `(space :align-to
-                                    (+ header-line-indent-width ,next-x))
-		   'face 'fixed-pitch)
-		  cols))
-        (setq x next-x)))
+        (unless hidden
+          (when (and (>= lablen 3)
+                     not-last-col
+                     (> lablen available-space))
+            (setq label (truncate-string-to-width label available-space
+                                                  nil nil t)))
+	  (push
+	   (cond
+	    ;; An unsortable column
+	    ((not (nth 2 col))
+	     (propertize label 'tabulated-list-column-name pname))
+	    ;; The selected sort column
+	    ((equal (car col) (car tabulated-list-sort-key))
+	     (apply 'propertize
+                    (concat label
+                            (cond
+                             ((and (< lablen 3) not-last-col) "")
+                             ((cdr tabulated-list-sort-key)
+                              (format " %c"
+                                      tabulated-list-gui-sort-indicator-desc))
+                             (t (format " %c"
+                                        tabulated-list-gui-sort-indicator-asc))))
+                    'face 'bold
+                    'tabulated-list-column-name pname
+                    button-props))
+	    ;; Unselected sortable column.
+	    (t (apply 'propertize label
+		      'tabulated-list-column-name pname
+		      button-props)))
+	   cols)
+          (when right-align
+            (let ((shift (- width (string-width (car cols)))))
+              (when (> shift 0)
+                (setq cols
+                      (cons (car cols)
+                            (cons
+                             (propertize
+                              (make-string shift ?\s)
+                              'display
+                              `(space :align-to
+                                      (+ header-line-indent-width ,(+ x shift))))
+                             (cdr cols))))
+                (setq x (+ x shift)))))
+	  (if (>= pad-right 0)
+	      (push (propertize
+                     " "
+		     'display `(space :align-to
+                                      (+ header-line-indent-width ,next-x))
+		     'face 'fixed-pitch)
+		    cols))
+          (setq x next-x))))
     (setq cols (apply 'concat (nreverse cols)))
     (if tabulated-list-use-header-line
 	(setq header-line-format (list "" 'header-line-indent cols))
@@ -530,15 +538,29 @@ tabulated-list-print-entry
      beg (point)
      `(tabulated-list-id ,id tabulated-list-entry ,cols))))
 
+(defun tabulated-list--next-visible-column (n)
+  (let ((len (length tabulated-list-format))
+        (col-nb (1+ n))
+        found)
+    (while (and (< col-nb len)
+                (not found))
+      (if (plist-get (nthcdr 3 (aref tabulated-list-format col-nb))
+                     :hidden)
+          (setq col-nb (1+ col-nb))
+        (setq found t)))
+    (when (< col-nb len)
+      col-nb)))
+
 (defun tabulated-list--available-space (width n)
-  (let* ((next-col-format (aref tabulated-list-format (1+ n)))
+  (let* ((next-col (tabulated-list--next-visible-column n))
+         (next-col-format (aref tabulated-list-format next-col))
          (next-col-right-align (plist-get (nthcdr 3 next-col-format)
                                           :right-align))
          (next-col-width (nth 1 next-col-format)))
     (if next-col-right-align
         (- (+ width next-col-width)
            (min next-col-width
-                (tabulated-list--col-local-max-widths (1+ n))))
+                (tabulated-list--col-local-max-widths next-col)))
       width)))
 
 (defun tabulated-list-print-col (n col-desc x)
@@ -552,50 +574,52 @@ tabulated-list-print-col
 	 (props     (nthcdr 3 format))
 	 (pad-right (or (plist-get props :pad-right) 1))
          (right-align (plist-get props :right-align))
+         (hidden (plist-get props :hidden))
          (label (cond ((stringp col-desc) col-desc)
                       ((eq (car col-desc) 'image) " ")
                       (t (car col-desc))))
          (label-width (string-width label))
 	 (help-echo (concat (car format) ": " label))
 	 (opoint (point))
-	 (not-last-col (< (1+ n) (length tabulated-list-format)))
+	 (not-last-col (tabulated-list--next-visible-column n))
 	 (available-space (and not-last-col
                                (if right-align
                                    width
                                  (tabulated-list--available-space width n)))))
-    ;; Truncate labels if necessary (except last column).
-    ;; Don't truncate to `width' if the next column is align-right
-    ;; and has some space left, truncate to `available-space' instead.
-    (when (and not-last-col
-	       (> label-width available-space))
-      (setq label (truncate-string-to-width
-		   label available-space nil nil t t)
-	    label-width available-space))
-    (setq label (bidi-string-mark-left-to-right label))
-    (when (and right-align (> width label-width))
-      (let ((shift (- width label-width)))
-        (insert (propertize (make-string shift ?\s)
-                            'display `(space :align-to ,(+ x shift))))
-        (setq width (- width shift))
-        (setq x (+ x shift))))
-    (cond ((stringp col-desc)
-           (insert (if (get-text-property 0 'help-echo label)
-                       label
-                     (propertize label 'help-echo help-echo))))
-          ((eq (car col-desc) 'image)
-           (insert (propertize " "
-                               'display col-desc
-                               'help-echo help-echo)))
-          ((apply 'insert-text-button label (cdr col-desc))))
-    (let ((next-x (+ x pad-right width)))
-      ;; No need to append any spaces if this is the last column.
-      (when not-last-col
-        (when (> pad-right 0) (insert (make-string pad-right ?\s)))
-        (insert (propertize
-                 (make-string (- width (min width label-width)) ?\s)
-                 'display `(space :align-to ,next-x))))
-      (put-text-property opoint (point) 'tabulated-list-column-name name)
-      next-x)))
+    (if hidden x
+      ;; Truncate labels if necessary (except last column).
+      ;; Don't truncate to `width' if the next column is align-right
+      ;; and has some space left, truncate to `available-space' instead.
+      (when (and not-last-col
+	         (> label-width available-space))
+        (setq label (truncate-string-to-width
+		     label available-space nil nil t t)
+	      label-width available-space))
+      (setq label (bidi-string-mark-left-to-right label))
+      (when (and right-align (> width label-width))
+        (let ((shift (- width label-width)))
+          (insert (propertize (make-string shift ?\s)
+                              'display `(space :align-to ,(+ x shift))))
+          (setq width (- width shift))
+          (setq x (+ x shift))))
+      (cond ((stringp col-desc)
+             (insert (if (get-text-property 0 'help-echo label)
+                         label
+                       (propertize label 'help-echo help-echo))))
+            ((eq (car col-desc) 'image)
+             (insert (propertize " "
+                                 'display col-desc
+                                 'help-echo help-echo)))
+            ((apply 'insert-text-button label (cdr col-desc))))
+      (let ((next-x (+ x pad-right width)))
+        ;; No need to append any spaces if this is the last column.
+        (when not-last-col
+          (when (> pad-right 0) (insert (make-string pad-right ?\s)))
+          (insert (propertize
+                   (make-string (- width (min width label-width)) ?\s)
+                   'display `(space :align-to ,next-x))))
+        (put-text-property opoint (point) 'tabulated-list-column-name name)
+        next-x))))
 
 (defun tabulated-list-delete-entry ()
   "Delete the Tabulated List entry at point.
@@ -726,38 +750,16 @@ tabulated-list-widen-current-column
 Interactively, N is the prefix numeric argument, and defaults to
 1."
   (interactive "p")
-  (let ((start (current-column))
-        (entry (tabulated-list-get-entry))
-        (nb-cols (length tabulated-list-format))
-        (col-nb 0)
-        (total-width 0)
-        (found nil)
-        col-width)
-    (while (and (not found)
-                (< col-nb nb-cols))
-      (if (>= start
-              (setq total-width
-                    (+ total-width
-                       (max (setq col-width
-                                  (cadr (aref tabulated-list-format
-                                              col-nb)))
-                            (let ((desc (aref entry col-nb)))
-                              (string-width (if (stringp desc)
-                                                desc
-                                              (car desc)))))
-                       (or (plist-get (nthcdr 3 (aref tabulated-list-format
-                                                      col-nb))
-                                      :pad-right)
-                           1))))
-          (setq col-nb (1+ col-nb))
-        (setq found t)
-        ;; `tabulated-list-format' may be a constant (sharing list
-        ;; structures), so copy it before mutating.
-        (setq tabulated-list-format (copy-tree tabulated-list-format t))
-        (setf (cadr (aref tabulated-list-format col-nb))
-              (max 1 (+ col-width n)))
-        (tabulated-list-print t)
-        (tabulated-list-init-header)))))
+  (let* ((col-nb (tabulated-list--column-number
+                  (tabulated-list-get-column)))
+         (col-width (cadr (aref tabulated-list-format col-nb))))
+    ;; `tabulated-list-format' may be a constant (sharing list
+    ;; structures), so copy it before mutating.
+    (setq tabulated-list-format (copy-tree tabulated-list-format t))
+    (setf (cadr (aref tabulated-list-format col-nb))
+          (max 1 (+ col-width n)))
+    (tabulated-list-print t)
+    (tabulated-list-init-header)))
 
 (defun tabulated-list-narrow-current-column (&optional n)
   "Narrow the current tabulated list column by N chars.
@@ -766,6 +768,35 @@ tabulated-list-narrow-current-column
   (interactive "p")
   (tabulated-list-widen-current-column (- n)))
 
+(defun tabulated-list-hide-current-column ()
+  "Hide the current tabulated list column."
+  (interactive)
+  (let ((col-nb (tabulated-list--column-number
+                 (tabulated-list-get-column))))
+    (setf (nthcdr 3 (aref tabulated-list-format col-nb))
+          (plist-put (nthcdr 3 (aref tabulated-list-format col-nb))
+                     :hidden t)))
+  (tabulated-list-init-header)
+  (tabulated-list-print t t))
+
+(defun tabulated-list-make-column-visible (name)
+  "Make the tabulated list column NAME visible.
+Interactively, NAME is a hidden column propmted for with
+`completing-read'."
+  (interactive
+   (list
+    (completing-read "Colummn name: "
+                     (append tabulated-list-format nil)
+                     (lambda (col)
+                       (plist-get (nthcdr 3 col) :hidden))
+                     t)))
+  (let ((col-nb (tabulated-list--column-number name)))
+    (setf (nthcdr 3 (aref tabulated-list-format col-nb))
+          (plist-put (nthcdr 3 (aref tabulated-list-format col-nb))
+                     :hidden nil)))
+  (tabulated-list-init-header)
+  (tabulated-list-print t t))
+
 (defun tabulated-list-next-column (&optional arg)
   "Go to the start of the next column after point on the current line.
 If ARG is provided, move that many columns."
-- 
2.35.1


--=-=-=--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#56345; Package emacs. Full text available.
Added tag(s) moreinfo. Request was from Lars Ingebrigtsen <larsi@HIDDEN> to control <at> debbugs.gnu.org. Full text available.

Message received at 56345 <at> debbugs.gnu.org:


Received: (at 56345) by debbugs.gnu.org; 5 Sep 2022 19:32:04 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Sep 05 15:32:04 2022
Received: from localhost ([127.0.0.1]:48951 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oVHpD-0006RP-Qf
	for submit <at> debbugs.gnu.org; Mon, 05 Sep 2022 15:32:04 -0400
Received: from quimby.gnus.org ([95.216.78.240]:43374)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <larsi@HIDDEN>) id 1oVHpC-0006Qs-6s
 for 56345 <at> debbugs.gnu.org; Mon, 05 Sep 2022 15:32:02 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org;
 s=20200322; h=Content-Type:MIME-Version:Message-ID:Date:References:
 In-Reply-To:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding:
 Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender:
 Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:
 List-Subscribe:List-Post:List-Owner:List-Archive;
 bh=OmkyvZ94s2zaXGaDsJQKUJZx+Vulmr2EBUz7NeyYJcw=; b=tipOiFTNpWO7d59UtgRmV7rvTz
 h2XR+iNTPZKq0EQwbO1O5GlSpi/4isRVj0YvtAy/xBKs2Biyo+PJ56dMUT5K6ygvXC/fEdOnH+4ly
 nMN/7keZpcB9H1Tr4BZYIP1YPtvpjp+A5TdPbgAscsFFk0JNsji6FBQvEPIbENooOHsc=;
Received: from [84.212.220.105] (helo=joga)
 by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.92) (envelope-from <larsi@HIDDEN>)
 id 1oVHp3-0004fO-Ve; Mon, 05 Sep 2022 21:31:56 +0200
From: Lars Ingebrigtsen <larsi@HIDDEN>
To: Thuna <thuna.cing@HIDDEN>
Subject: Re: bug#56345: 29.0.50; [PATCH] Add column hiding to tabulated-list
In-Reply-To: <877d4vfrzu.fsf@HIDDEN> (Thuna's message of "Sat, 02 Jul 2022
 18:34:29 +0300")
References: <87r134ihdd.fsf@HIDDEN> <877d4vfrzu.fsf@HIDDEN>
X-Now-Playing: Joni Mitchell's _Hejira_: "Furry Sings The Blues"
Date: Mon, 05 Sep 2022 21:31:53 +0200
Message-ID: <87bkrtzkgm.fsf_-_@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 @@CONTACT_ADDRESS@@ for details.
 Content preview:  Thuna <thuna.cing@HIDDEN> writes: > I apparently had a
 couple typos that I missed, the patch 0003 is to fix > that. > > Also,
 I figured
 it would be convenient to have a way to specify the > column to hide by name, 
 so I created a funct [...] 
 Content analysis details:   (-2.9 points, 5.0 required)
 pts rule name              description
 ---- ---------------------- --------------------------------------------------
 -1.0 ALL_TRUSTED            Passed through trusted hosts only via SMTP
 -1.9 BAYES_00               BODY: Bayes spam probability is 0 to 1%
 [score: 0.0000]
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 56345
Cc: 56345 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Thuna <thuna.cing@HIDDEN> writes:

> I apparently had a couple typos that I missed, the patch 0003 is to fix
> that.
>
> Also, I figured it would be convenient to have a way to specify the
> column to hide by name, so I created a function named
> `tabulated-list-hide-column', which `tabulated-list-hide-current-column'
> now calls.  I didn't test it but the code is directly ripped from the
> original function so I don't think there will be any problems.  That is
> in the patch 0004.

It's a bit difficult to read this patch series.  Could you instead
submit one single patch, instead of a series of patches that fix
problems in previous versions of the patches?

Also, this change is so large that a copyright assignment to the FSF is
needed.  Would you be willing to sign such paperwork?




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#56345; Package emacs. Full text available.

Message received at 56345 <at> debbugs.gnu.org:


Received: (at 56345) by debbugs.gnu.org; 2 Jul 2022 15:34:42 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Jul 02 11:34:42 2022
Received: from localhost ([127.0.0.1]:42579 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1o7f8s-0006Qr-5x
	for submit <at> debbugs.gnu.org; Sat, 02 Jul 2022 11:34:42 -0400
Received: from mail-ed1-f53.google.com ([209.85.208.53]:38577)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <thuna.cing@HIDDEN>) id 1o7f8o-0006Qb-Sm
 for 56345 <at> debbugs.gnu.org; Sat, 02 Jul 2022 11:34:40 -0400
Received: by mail-ed1-f53.google.com with SMTP id fd6so6300164edb.5
 for <56345 <at> debbugs.gnu.org>; Sat, 02 Jul 2022 08:34:38 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112;
 h=from:to:subject:date:message-id:mime-version;
 bh=I9k0jg8PayCXc+64aq5F4u5LLIPvz7z+gf1eDkmrFvs=;
 b=Ufj/gL3a+jkqWpxHB+ozZ5pQ+WO/uBd/xF8fSTG5eQnSJ70ZLh3zjtdj3NekTFKs6a
 4ADwbiaFgc+TbXaG58P0KPAH5khirm8LpxxVefq8sY4mpYEf8f8sDoQaSQ+uJipxsQa+
 VHjMjdo2hD42ihOROlNNPwD5YECBDPTLx0stXu4yduoC8JxUUNDm3WF4n53WGIMs8ziU
 cbEKndUeSQbkRgmn5n6GFtX9e/1AnO2wXFgi2d6yJ4P6evLDIWrXnTN3wGhfLU5eFMD4
 NxscDLZGIv4sPYM42pGuQg8P/ewA6SEBcKoriJYC1zt7ZMjsODwQeFo/kHGOpcCddIGk
 mWmg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:subject:date:message-id:mime-version;
 bh=I9k0jg8PayCXc+64aq5F4u5LLIPvz7z+gf1eDkmrFvs=;
 b=04ndXkSeZSfoMv2DbH5W/05I28734xciOscRO3ys3gAg8lZzdx22ahYAnj28luuuVW
 UkzBJhzUo6Wgk89GVNaTI9bSmoD6DriUKFKvYZN0X3c5JPzLthuHKRS+f7XgI2XrhIcq
 qTq1h+3w2FI78wtBQgKqZt47CCc0mkBMguw9n/hqGaAicVTGcCQWLkJu4j6rbIVrsNI1
 26bsifMrYa14SeopyRlicAlq6lnW//RyyWtr48nze8GLyL95fuhi+JGIz10++0AfqQUm
 Xp8Qr5t9wO0emzGkPbOSzP/EY0yBBI9YR+bvx5jiE+a5Px6ugWbmffkDOcnrTZnJPxVs
 K+tw==
X-Gm-Message-State: AJIora/ugb3edK4K1MfIQTyhk0AtKX2/I4EwK2zWPf9EjJfk5KWrR166
 RAttQSh4VjQrCl+6ICTWoCxhSKYgLy8pHyWU
X-Google-Smtp-Source: AGRyM1uZOQnTdWn1QIl9yRfybhlqgo67bTN150kElH4RSn+e+QAQcjC7OEe9cJfzSBics5EHA/8XKA==
X-Received: by 2002:aa7:d795:0:b0:435:7fc8:2d1b with SMTP id
 s21-20020aa7d795000000b004357fc82d1bmr25898168edq.201.1656776072399; 
 Sat, 02 Jul 2022 08:34:32 -0700 (PDT)
Received: from thuna ([85.106.112.123]) by smtp.gmail.com with ESMTPSA id
 o16-20020aa7d3d0000000b00437ce7fe1a0sm7072444edr.8.2022.07.02.08.34.30
 for <56345 <at> debbugs.gnu.org>
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Sat, 02 Jul 2022 08:34:31 -0700 (PDT)
From: Thuna <thuna.cing@HIDDEN>
To: 56345 <at> debbugs.gnu.org
Subject: Typo fix and convenience function
Date: Sat, 02 Jul 2022 18:34:29 +0300
Message-ID: <877d4vfrzu.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 56345
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--=-=-=
Content-Type: text/plain

I apparently had a couple typos that I missed, the patch 0003 is to fix
that.

Also, I figured it would be convenient to have a way to specify the
column to hide by name, so I created a function named
`tabulated-list-hide-column', which `tabulated-list-hide-current-column'
now calls.  I didn't test it but the code is directly ripped from the
original function so I don't think there will be any problems.  That is
in the patch 0004.


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0003-Fix-typos-in-tabulated-list-make-column-visible.patch
Content-Description: typo fix

From c96ab25defb31fc596818a39e1a632dd09e2cc72 Mon Sep 17 00:00:00 2001
From: Thuna <thuna.cing@HIDDEN>
Date: Sat, 2 Jul 2022 18:21:53 +0300
Subject: [PATCH 3/4] Fix typos in tabulated-list-make-column-visible

In the docstring: propmted -> prompted
In the `completing-read' prompt: colummn -> column
---
 lisp/emacs-lisp/tabulated-list.el | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/lisp/emacs-lisp/tabulated-list.el b/lisp/emacs-lisp/tabulated-list.el
index 4e0b3b9e95..96607307fa 100644
--- a/lisp/emacs-lisp/tabulated-list.el
+++ b/lisp/emacs-lisp/tabulated-list.el
@@ -791,11 +791,11 @@ tabulated-list-hide-current-column
 
 (defun tabulated-list-make-column-visible (name)
   "Make the tabulated list column NAME visible.
-Interactively, NAME is a hidden column propmted for with
+Interactively, NAME is a hidden column prompted for with
 `completing-read'."
   (interactive
    (list
-    (completing-read "Colummn name: "
+    (completing-read "Column name: "
                      (append tabulated-list-format nil)
                      (lambda (col)
                        (plist-get (nthcdr 3 col) :hidden))
-- 
2.35.1


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0004-Allow-interactive-hiding-of-a-specific-column-in-tab.patch
Content-Description: hide column by name

From 6198fb2b57a9c8267d86baac40406d05ef62eb2a Mon Sep 17 00:00:00 2001
From: Thuna <thuna.cing@HIDDEN>
Date: Sat, 2 Jul 2022 18:24:34 +0300
Subject: [PATCH 4/4] Allow interactive hiding of a specific column in
 tabulated-list

* tabulated-list.el (tabulated-list-hide-column
tabulated-list-hide-current-column): The command
`tabulated-list-hide-current-column' is now a wrapper for
`tabulated-list-hide-column', a function which takes the name of the
column and hides it.  This can be called interactively similar to
`tabulated-list-make-column-visible'
---
 lisp/emacs-lisp/tabulated-list.el | 17 +++++++++++++++--
 1 file changed, 15 insertions(+), 2 deletions(-)

diff --git a/lisp/emacs-lisp/tabulated-list.el b/lisp/emacs-lisp/tabulated-list.el
index 96607307fa..c04a539ed8 100644
--- a/lisp/emacs-lisp/tabulated-list.el
+++ b/lisp/emacs-lisp/tabulated-list.el
@@ -778,8 +778,21 @@ tabulated-list-narrow-current-column
 (defun tabulated-list-hide-current-column ()
   "Hide the current tabulated list column."
   (interactive)
-  (let ((col-nb (tabulated-list--column-number
-                 (tabulated-list-get-column))))
+  (tabulated-list-hide-column
+   (tabulated-list-get-column)))
+
+(defun tabulated-list-hide-column (name)
+  "Hide the tabulated list column NAME.
+Interactively, NAME is a visible column prompted for with
+`completing-read'"
+  (interactive
+   (list
+    (completing-read "Column name"
+                     (append tabulated-list-format nil)
+                     (lambda (col)
+                       (not (plist-get (nthcdr 3 col) :hidden)))
+                     t)))
+  (let ((col-nb (tabulated-list--column-number name)))
     ;; `tabulated-list-format' may be a constant (sharing list
     ;; structures), so copy it before mutating.
     (setq tabulated-list-format (copy-tree tabulated-list-format t))
-- 
2.35.1


--=-=-=--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#56345; Package emacs. Full text available.
Severity set to 'wishlist' from 'normal' Request was from Stefan Kangas <stefan@HIDDEN> to control <at> debbugs.gnu.org. Full text available.

Message received at 56345 <at> debbugs.gnu.org:


Received: (at 56345) by debbugs.gnu.org; 2 Jul 2022 06:06:45 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Jul 02 02:06:45 2022
Received: from localhost ([127.0.0.1]:39558 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1o7WHF-0002h5-Hc
	for submit <at> debbugs.gnu.org; Sat, 02 Jul 2022 02:06:45 -0400
Received: from eggs.gnu.org ([209.51.188.92]:50370)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eliz@HIDDEN>) id 1o7WHD-0002gl-FK
 for 56345 <at> debbugs.gnu.org; Sat, 02 Jul 2022 02:06:43 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e]:44514)
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1o7WH7-0000Dt-Lu; Sat, 02 Jul 2022 02:06:37 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date:
 mime-version; bh=e4TSrENS60TfGp2lxrc227WvhyOQIUJ36pNjpynY+X8=; b=kzNX0w68rGXu
 FhgPNMfA3Y8YjoDKNVfr7pjs/E5v96+hEyNeh84T08GVri4sCa70vjg6ULyKDz+DFjS7G54ZWTh5n
 Q7Xk67mxCqFpnpQnbJguHwsXYCwdkno3jJSjGf0EL9p3YEusOkAXF4Cgj5Om3wQ1aLctlwMGpxLQa
 wSLOCLoS8SMhTQi9+uTH9p+0hEz36f1j+YIcHtMBXOivNgx++B6M2XJCcIu53buu+bFGov6PTaDbB
 9MZM1wg5WY/8eRbzx7/msuCsnjZBsEfHjGVbZl9citt86lgLOa3hWnrZcNPHuHSjnL1e4fZEid47M
 nQ/4h3zPRFjL9wrgXjPyOQ==;
Received: from [87.69.77.57] (port=4361 helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@HIDDEN>)
 id 1o7WH5-0000qD-3j; Sat, 02 Jul 2022 02:06:37 -0400
Date: Sat, 02 Jul 2022 09:06:47 +0300
Message-Id: <83r134cako.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Thuna <thuna.cing@HIDDEN>
In-Reply-To: <87r134ihdd.fsf@HIDDEN> (message from Thuna on Sat, 02 Jul
 2022 01:43:26 +0300)
Subject: Re: bug#56345: 29.0.50; [PATCH] Add column hiding to tabulated-list
References: <87r134ihdd.fsf@HIDDEN>
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 56345
Cc: 56345 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

> From: Thuna <thuna.cing@HIDDEN>
> Date: Sat, 02 Jul 2022 01:43:26 +0300
> 
> >From b49d5876afa3d969ce82df0d723a8a8b766009a0 Mon Sep 17 00:00:00 2001
> From: Thuna <thuna.cing@HIDDEN>
> Date: Fri, 1 Jul 2022 18:19:52 +0300
> Subject: [PATCH 1/2] Add column hiding to tabulated-list-mode
> 
> Add the keyword `:hidden' to `tabulated-list-format' for controlling
> the visibility of a specific column.
> 
> Introduce the commands `tabulated-list-hide-current-column' and
> `tabulated-list-make-column-visible' for interactively changing the
> `:hidden' property of the column.  The commands are bound to "." and
> "+" respectively.
> 
> Change calculations involving other columns to account for the
> `:hidden' property.
> 
> Make the current column calculation into its own function named
> `tabulated-list-get-column'.  Make `tabulated-list-widen-current-column'
> use that instead. Use the text property `tabulated-list-column-name'
> to find the current tabulated-list column instead of `current-column'.

Thanks.  If we decide to install this, we'd need a NEWS entry for the
new feature.

I have no comments on the code, but please wait for Lars and others to
chime in.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#56345; Package emacs. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 1 Jul 2022 22:43:38 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jul 01 18:43:38 2022
Received: from localhost ([127.0.0.1]:39317 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1o7PMP-0001AP-AP
	for submit <at> debbugs.gnu.org; Fri, 01 Jul 2022 18:43:38 -0400
Received: from lists.gnu.org ([209.51.188.17]:33720)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <thuna.cing@HIDDEN>) id 1o7PMN-0001AG-SH
 for submit <at> debbugs.gnu.org; Fri, 01 Jul 2022 18:43:36 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:35186)
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <thuna.cing@HIDDEN>)
 id 1o7PMN-0002UM-Hs
 for bug-gnu-emacs@HIDDEN; Fri, 01 Jul 2022 18:43:35 -0400
Received: from mail-ed1-x533.google.com ([2a00:1450:4864:20::533]:34655)
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.90_1) (envelope-from <thuna.cing@HIDDEN>)
 id 1o7PML-0005a2-84
 for bug-gnu-emacs@HIDDEN; Fri, 01 Jul 2022 18:43:35 -0400
Received: by mail-ed1-x533.google.com with SMTP id z41so4616582ede.1
 for <bug-gnu-emacs@HIDDEN>; Fri, 01 Jul 2022 15:43:32 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112;
 h=from:to:subject:date:message-id:mime-version;
 bh=0nb26BVKRVxbY0oAlwlQ36IUt1CcRKrbMa6mYIkH2FI=;
 b=YBfsMcEpgr0mldEm2dsFOAxkRyDvPo0ZrNVxSr4juYJ7/PJ9tdtIupsPXEJOUNNrFs
 7F8PFF+9/BKlagSFL8qsiDe78DKS9Ha8FssJpFyyO9V/cwyMvr00z4LFFPauJ5uD3laf
 bzec0MYlQtuDdLqimQPYJaW8sPW55DIpTfzqZ1QPNuLbT29mdLlWH5UTr/mlYQiWIbV/
 wuFl7dd6idmwkznDqoarVMP8jlIgiZnLBKsrhTIYePSuyAv+sjtxUF0npPpQnXTsip7Y
 wUYdf9iG0SU6Gcb0bur11VSAGST35aQyFb3+1m5rxcsEurByyc76wl6Iec6noV0uF+CS
 gGVw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:subject:date:message-id:mime-version;
 bh=0nb26BVKRVxbY0oAlwlQ36IUt1CcRKrbMa6mYIkH2FI=;
 b=lRiWvwKA/83YkeqWniqmaUk2Of1/94pGYoXmOS95l5W46GiqmANimVDn07MR/G21qD
 PSrNDwk0Z+tlo5Q31XTYAvLG8b9ZPeuV/Zz4nOCJZP2+yMeFm2dZxMEQKuwGLPfKZvUR
 7nXW6a5qVi1B0DCJoYMYVRi0QS2BwnACV/qvh8if5LEBStjxONnM0JLp5QEsfvCt3I8Y
 OVwbECtqV2rERf2ruKoKgC++kHfgfGzHqA/+oNsW+FtOKQewh58waa0YsNi6ng2ASymm
 GjUtaDGAIw3O+pE1RltRr70yytUc2wHcLGcQjnFTPprdp5M+BEssfPMAxxPtNfO/YRyv
 o4Ew==
X-Gm-Message-State: AJIora/vUzbX9sjwBtjRCxmFviHHVfq3dMZ1gLIyveR1Ot7Us+CO7/mB
 x9HqzOwlPtmERjSJiskxnWDdHqbKAK3UYY+d
X-Google-Smtp-Source: AGRyM1uFmIEbhLoZyA8TOFHpOiEu846ksiE04K3nGwQDGKbJVHvvuX2T/EmkB11anvZ0IJGvgPsiFw==
X-Received: by 2002:a05:6402:328f:b0:435:7f7a:7666 with SMTP id
 f15-20020a056402328f00b004357f7a7666mr3676414eda.168.1656715410057; 
 Fri, 01 Jul 2022 15:43:30 -0700 (PDT)
Received: from thuna ([85.106.112.123]) by smtp.gmail.com with ESMTPSA id
 y21-20020a170906559500b00726dbb16b8dsm5262380ejp.65.2022.07.01.15.43.27
 for <bug-gnu-emacs@HIDDEN>
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 01 Jul 2022 15:43:28 -0700 (PDT)
From: Thuna <thuna.cing@HIDDEN>
To: bug-gnu-emacs@HIDDEN
Subject: 29.0.50; [PATCH] Add column hiding to tabulated-list
Date: Sat, 02 Jul 2022 01:43:26 +0300
Message-ID: <87r134ihdd.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
Received-SPF: pass client-ip=2a00:1450:4864:20::533;
 envelope-from=thuna.cing@HIDDEN; helo=mail-ed1-x533.google.com
X-Spam_score_int: -20
X-Spam_score: -2.1
X-Spam_bar: --
X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001,
 RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001,
 T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: -1.3 (-)
X-Debbugs-Envelope-To: submit
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -2.3 (--)

--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0001-Add-column-hiding-to-tabulated-list-mode.patch
Content-Description: Actual patch

From b49d5876afa3d969ce82df0d723a8a8b766009a0 Mon Sep 17 00:00:00 2001
From: Thuna <thuna.cing@HIDDEN>
Date: Fri, 1 Jul 2022 18:19:52 +0300
Subject: [PATCH 1/2] Add column hiding to tabulated-list-mode

Add the keyword `:hidden' to `tabulated-list-format' for controlling
the visibility of a specific column.

Introduce the commands `tabulated-list-hide-current-column' and
`tabulated-list-make-column-visible' for interactively changing the
`:hidden' property of the column.  The commands are bound to "." and
"+" respectively.

Change calculations involving other columns to account for the
`:hidden' property.

Make the current column calculation into its own function named
`tabulated-list-get-column'.  Make `tabulated-list-widen-current-column'
use that instead. Use the text property `tabulated-list-column-name'
to find the current tabulated-list column instead of `current-column'.
---
 lisp/emacs-lisp/tabulated-list.el | 273 +++++++++++++++++-------------
 1 file changed, 153 insertions(+), 120 deletions(-)

diff --git a/lisp/emacs-lisp/tabulated-list.el b/lisp/emacs-lisp/tabulated-list.el
index 7d815a3ced..868ed141ec 100644
--- a/lisp/emacs-lisp/tabulated-list.el
+++ b/lisp/emacs-lisp/tabulated-list.el
@@ -104,7 +104,8 @@ tabulated-list-format
    Currently supported properties are:
    - `:right-align': If non-nil, the column should be right-aligned.
    - `:pad-right': Number of additional padding spaces to the
-     right of the column (defaults to 1 if omitted).")
+     right of the column (defaults to 1 if omitted).
+   - `:hidden': If non-nil, the column should not be visible.")
 (put 'tabulated-list-format 'permanent-local t)
 
 (defvar-local tabulated-list-use-header-line t
@@ -179,6 +180,11 @@ tabulated-list-get-entry
 no entry at POS.  POS, if omitted or nil, defaults to point."
   (get-text-property (or pos (point)) 'tabulated-list-entry))
 
+(defun tabulated-list-get-column (&optional pos)
+  "Return the column name of the Tabulated List cell at POS.
+POS, if omitted or nil, defaults to point."
+  (get-text-property (or pos (point)) 'tabulated-list-column-name))
+
 (defun tabulated-list-put-tag (tag &optional advance)
   "Put TAG in the padding area of the current line.
 TAG should be a string, with length <= `tabulated-list-padding'.
@@ -228,6 +234,8 @@ tabulated-list-mode-map
     (define-key map "S" 'tabulated-list-sort)
     (define-key map "}" 'tabulated-list-widen-current-column)
     (define-key map "{" 'tabulated-list-narrow-current-column)
+    (define-key map "." 'tabulated-list-hide-current-column)
+    (define-key map "+" 'tabulated-list-make-column-visible)
     (define-key map [follow-link] 'mouse-face)
     (define-key map [mouse-2] 'mouse-select-window)
     map)
@@ -290,7 +298,7 @@ tabulated-list-init-header
           cols)
     (dotimes (n len)
       (let* ((col (aref tabulated-list-format n))
-             (not-last-col (< n (1- len)))
+             (not-last-col (tabulated-list--next-visible-column n))
 	     (label (nth 0 col))
              (lablen (length label))
              (pname label)
@@ -298,62 +306,64 @@ tabulated-list-init-header
 	     (props (nthcdr 3 col))
 	     (pad-right (or (plist-get props :pad-right) 1))
              (right-align (plist-get props :right-align))
+             (hidden (plist-get props :hidden))
              (next-x (+ x pad-right width))
              (available-space
               (and not-last-col
                    (if right-align
                        width
                      (tabulated-list--available-space width n)))))
-        (when (and (>= lablen 3)
-                   not-last-col
-                   (> lablen available-space))
-          (setq label (truncate-string-to-width label available-space
-                                                nil nil t)))
-	(push
-	 (cond
-	  ;; An unsortable column
-	  ((not (nth 2 col))
-	   (propertize label 'tabulated-list-column-name pname))
-	  ;; The selected sort column
-	  ((equal (car col) (car tabulated-list-sort-key))
-	   (apply 'propertize
-                  (concat label
-                          (cond
-                           ((and (< lablen 3) not-last-col) "")
-                           ((cdr tabulated-list-sort-key)
-                            (format " %c"
-                                    tabulated-list-gui-sort-indicator-desc))
-                           (t (format " %c"
-                                      tabulated-list-gui-sort-indicator-asc))))
-                  'face 'bold
-                  'tabulated-list-column-name pname
-                  button-props))
-	  ;; Unselected sortable column.
-	  (t (apply 'propertize label
-		    'tabulated-list-column-name pname
-		    button-props)))
-	 cols)
-        (when right-align
-          (let ((shift (- width (string-width (car cols)))))
-            (when (> shift 0)
-              (setq cols
-                    (cons (car cols)
-                          (cons
-                           (propertize
-                            (make-string shift ?\s)
-                            'display
-                            `(space :align-to
-                                    (+ header-line-indent-width ,(+ x shift))))
-                           (cdr cols))))
-              (setq x (+ x shift)))))
-	(if (>= pad-right 0)
-	    (push (propertize
-                   " "
-		   'display `(space :align-to
-                                    (+ header-line-indent-width ,next-x))
-		   'face 'fixed-pitch)
-		  cols))
-        (setq x next-x)))
+        (unless hidden
+          (when (and (>= lablen 3)
+                     not-last-col
+                     (> lablen available-space))
+            (setq label (truncate-string-to-width label available-space
+                                                  nil nil t)))
+	  (push
+	   (cond
+	    ;; An unsortable column
+	    ((not (nth 2 col))
+	     (propertize label 'tabulated-list-column-name pname))
+	    ;; The selected sort column
+	    ((equal (car col) (car tabulated-list-sort-key))
+	     (apply 'propertize
+                    (concat label
+                            (cond
+                             ((and (< lablen 3) not-last-col) "")
+                             ((cdr tabulated-list-sort-key)
+                              (format " %c"
+                                      tabulated-list-gui-sort-indicator-desc))
+                             (t (format " %c"
+                                        tabulated-list-gui-sort-indicator-asc))))
+                    'face 'bold
+                    'tabulated-list-column-name pname
+                    button-props))
+	    ;; Unselected sortable column.
+	    (t (apply 'propertize label
+		      'tabulated-list-column-name pname
+		      button-props)))
+	   cols)
+          (when right-align
+            (let ((shift (- width (string-width (car cols)))))
+              (when (> shift 0)
+                (setq cols
+                      (cons (car cols)
+                            (cons
+                             (propertize
+                              (make-string shift ?\s)
+                              'display
+                              `(space :align-to
+                                      (+ header-line-indent-width ,(+ x shift))))
+                             (cdr cols))))
+                (setq x (+ x shift)))))
+	  (if (>= pad-right 0)
+	      (push (propertize
+                     " "
+		     'display `(space :align-to
+                                      (+ header-line-indent-width ,next-x))
+		     'face 'fixed-pitch)
+		    cols))
+          (setq x next-x))))
     (setq cols (apply 'concat (nreverse cols)))
     (if tabulated-list-use-header-line
 	(setq header-line-format (list "" 'header-line-indent cols))
@@ -535,15 +545,29 @@ tabulated-list-print-entry
      beg (point)
      `(tabulated-list-id ,id tabulated-list-entry ,cols))))
 
+(defun tabulated-list--next-visible-column (n)
+  (let ((len (length tabulated-list-format))
+        (col-nb (1+ n))
+        found)
+    (while (and (< col-nb len)
+                (not found))
+      (if (plist-get (nthcdr 3 (aref tabulated-list-format col-nb))
+                     :hidden)
+          (setq col-nb (1+ col-nb))
+        (setq found t)))
+    (when (< col-nb len)
+      col-nb)))
+
 (defun tabulated-list--available-space (width n)
-  (let* ((next-col-format (aref tabulated-list-format (1+ n)))
+  (let* ((next-col (tabulated-list--next-visible-column n))
+         (next-col-format (aref tabulated-list-format next-col))
          (next-col-right-align (plist-get (nthcdr 3 next-col-format)
                                           :right-align))
          (next-col-width (nth 1 next-col-format)))
     (if next-col-right-align
         (- (+ width next-col-width)
            (min next-col-width
-                (tabulated-list--col-local-max-widths (1+ n))))
+                (tabulated-list--col-local-max-widths next-col)))
       width)))
 
 (defun tabulated-list-print-col (n col-desc x)
@@ -557,50 +581,52 @@ tabulated-list-print-col
 	 (props     (nthcdr 3 format))
 	 (pad-right (or (plist-get props :pad-right) 1))
          (right-align (plist-get props :right-align))
+         (hidden (plist-get props :hidden))
          (label (cond ((stringp col-desc) col-desc)
                       ((eq (car col-desc) 'image) " ")
                       (t (car col-desc))))
          (label-width (string-width label))
 	 (help-echo (concat (car format) ": " label))
 	 (opoint (point))
-	 (not-last-col (< (1+ n) (length tabulated-list-format)))
+	 (not-last-col (tabulated-list--next-visible-column n))
 	 (available-space (and not-last-col
                                (if right-align
                                    width
                                  (tabulated-list--available-space width n)))))
-    ;; Truncate labels if necessary (except last column).
-    ;; Don't truncate to `width' if the next column is align-right
-    ;; and has some space left, truncate to `available-space' instead.
-    (when (and not-last-col
-	       (> label-width available-space))
-      (setq label (truncate-string-to-width
-		   label available-space nil nil t t)
-	    label-width available-space))
-    (setq label (bidi-string-mark-left-to-right label))
-    (when (and right-align (> width label-width))
-      (let ((shift (- width label-width)))
-        (insert (propertize (make-string shift ?\s)
-                            'display `(space :align-to ,(+ x shift))))
-        (setq width (- width shift))
-        (setq x (+ x shift))))
-    (cond ((stringp col-desc)
-           (insert (if (get-text-property 0 'help-echo label)
-                       label
-                     (propertize label 'help-echo help-echo))))
-          ((eq (car col-desc) 'image)
-           (insert (propertize " "
-                               'display col-desc
-                               'help-echo help-echo)))
-          ((apply 'insert-text-button label (cdr col-desc))))
-    (let ((next-x (+ x pad-right width)))
-      ;; No need to append any spaces if this is the last column.
-      (when not-last-col
-        (when (> pad-right 0) (insert (make-string pad-right ?\s)))
-        (insert (propertize
-                 (make-string (- width (min width label-width)) ?\s)
-                 'display `(space :align-to ,next-x))))
-      (put-text-property opoint (point) 'tabulated-list-column-name name)
-      next-x)))
+    (if hidden x
+      ;; Truncate labels if necessary (except last column).
+      ;; Don't truncate to `width' if the next column is align-right
+      ;; and has some space left, truncate to `available-space' instead.
+      (when (and not-last-col
+	         (> label-width available-space))
+        (setq label (truncate-string-to-width
+		     label available-space nil nil t t)
+	      label-width available-space))
+      (setq label (bidi-string-mark-left-to-right label))
+      (when (and right-align (> width label-width))
+        (let ((shift (- width label-width)))
+          (insert (propertize (make-string shift ?\s)
+                              'display `(space :align-to ,(+ x shift))))
+          (setq width (- width shift))
+          (setq x (+ x shift))))
+      (cond ((stringp col-desc)
+             (insert (if (get-text-property 0 'help-echo label)
+                         label
+                       (propertize label 'help-echo help-echo))))
+            ((eq (car col-desc) 'image)
+             (insert (propertize " "
+                                 'display col-desc
+                                 'help-echo help-echo)))
+            ((apply 'insert-text-button label (cdr col-desc))))
+      (let ((next-x (+ x pad-right width)))
+        ;; No need to append any spaces if this is the last column.
+        (when not-last-col
+          (when (> pad-right 0) (insert (make-string pad-right ?\s)))
+          (insert (propertize
+                   (make-string (- width (min width label-width)) ?\s)
+                   'display `(space :align-to ,next-x))))
+        (put-text-property opoint (point) 'tabulated-list-column-name name)
+        next-x))))
 
 (defun tabulated-list-delete-entry ()
   "Delete the Tabulated List entry at point.
@@ -731,38 +757,16 @@ tabulated-list-widen-current-column
 Interactively, N is the prefix numeric argument, and defaults to
 1."
   (interactive "p")
-  (let ((start (current-column))
-        (entry (tabulated-list-get-entry))
-        (nb-cols (length tabulated-list-format))
-        (col-nb 0)
-        (total-width 0)
-        (found nil)
-        col-width)
-    (while (and (not found)
-                (< col-nb nb-cols))
-      (if (>= start
-              (setq total-width
-                    (+ total-width
-                       (max (setq col-width
-                                  (cadr (aref tabulated-list-format
-                                              col-nb)))
-                            (let ((desc (aref entry col-nb)))
-                              (string-width (if (stringp desc)
-                                                desc
-                                              (car desc)))))
-                       (or (plist-get (nthcdr 3 (aref tabulated-list-format
-                                                      col-nb))
-                                      :pad-right)
-                           1))))
-          (setq col-nb (1+ col-nb))
-        (setq found t)
-        ;; `tabulated-list-format' may be a constant (sharing list
-        ;; structures), so copy it before mutating.
-        (setq tabulated-list-format (copy-tree tabulated-list-format t))
-        (setf (cadr (aref tabulated-list-format col-nb))
-              (max 1 (+ col-width n)))
-        (tabulated-list-print t)
-        (tabulated-list-init-header)))))
+  (let* ((col-nb (tabulated-list--column-number
+                  (tabulated-list-get-column)))
+         (col-width (cadr (aref tabulated-list-format col-nb))))
+    ;; `tabulated-list-format' may be a constant (sharing list
+    ;; structures), so copy it before mutating.
+    (setq tabulated-list-format (copy-tree tabulated-list-format t))
+    (setf (cadr (aref tabulated-list-format col-nb))
+          (max 1 (+ col-width n)))
+    (tabulated-list-print t)
+    (tabulated-list-init-header)))
 
 (defun tabulated-list-narrow-current-column (&optional n)
   "Narrow the current tabulated list column by N chars.
@@ -771,6 +775,35 @@ tabulated-list-narrow-current-column
   (interactive "p")
   (tabulated-list-widen-current-column (- n)))
 
+(defun tabulated-list-hide-current-column ()
+  "Hide the current tabulated list column."
+  (interactive)
+  (let ((col-nb (tabulated-list--column-number
+                 (tabulated-list-get-column))))
+    (setf (nthcdr 3 (aref tabulated-list-format col-nb))
+          (plist-put (nthcdr 3 (aref tabulated-list-format col-nb))
+                     :hidden t)))
+  (tabulated-list-init-header)
+  (tabulated-list-print t t))
+
+(defun tabulated-list-make-column-visible (name)
+  "Make the tabulated list column NAME visible.
+Interactively, NAME is a hidden column propmted for with
+`completing-read'."
+  (interactive
+   (list
+    (completing-read "Colummn name: "
+                     (append tabulated-list-format nil)
+                     (lambda (col)
+                       (plist-get (nthcdr 3 col) :hidden))
+                     t)))
+  (let ((col-nb (tabulated-list--column-number name)))
+    (setf (nthcdr 3 (aref tabulated-list-format col-nb))
+          (plist-put (nthcdr 3 (aref tabulated-list-format col-nb))
+                     :hidden nil)))
+  (tabulated-list-init-header)
+  (tabulated-list-print t t))
+
 (defun tabulated-list-next-column (&optional arg)
   "Go to the start of the next column after point on the current line.
 If ARG is provided, move that many columns."
-- 
2.35.1


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0002-Fix-tabulated-list-format-sharing-list-structures.patch
Content-Description: fix

From 3348b627bc1ad8d0d187a0c8bd0ce45f6a769d33 Mon Sep 17 00:00:00 2001
From: Thuna <thuna.cing@HIDDEN>
Date: Sat, 2 Jul 2022 00:03:38 +0300
Subject: [PATCH 2/2] Fix `tabulated-list-format' sharing list structures

* tabulated-list.el (tabulated-list-hide-current-column
tabulated-list-make-column-visible): Copy tabulated-list-format
recursively before mutating it.
---
 lisp/emacs-lisp/tabulated-list.el | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/lisp/emacs-lisp/tabulated-list.el b/lisp/emacs-lisp/tabulated-list.el
index 868ed141ec..4e0b3b9e95 100644
--- a/lisp/emacs-lisp/tabulated-list.el
+++ b/lisp/emacs-lisp/tabulated-list.el
@@ -780,6 +780,9 @@ tabulated-list-hide-current-column
   (interactive)
   (let ((col-nb (tabulated-list--column-number
                  (tabulated-list-get-column))))
+    ;; `tabulated-list-format' may be a constant (sharing list
+    ;; structures), so copy it before mutating.
+    (setq tabulated-list-format (copy-tree tabulated-list-format t))
     (setf (nthcdr 3 (aref tabulated-list-format col-nb))
           (plist-put (nthcdr 3 (aref tabulated-list-format col-nb))
                      :hidden t)))
@@ -798,6 +801,9 @@ tabulated-list-make-column-visible
                        (plist-get (nthcdr 3 col) :hidden))
                      t)))
   (let ((col-nb (tabulated-list--column-number name)))
+    ;; `tabulated-list-format' may be a constant (sharing list
+    ;; structures), so copy it before mutating.
+    (setq tabulated-list-format (copy-tree tabulated-list-format t))
     (setf (nthcdr 3 (aref tabulated-list-format col-nb))
           (plist-put (nthcdr 3 (aref tabulated-list-format col-nb))
                      :hidden nil)))
-- 
2.35.1


--=-=-=
Content-Type: text/plain

The attached patches introduce column hiding to tabulated-list-mode,
which works by adding the keyword `:hidden' to `tabulated-list-format'.

Patch 0001 is the actual patch itself while 0002 is a bug fix.  0001
compiled fine for me but I did not test 0002, though it should be
perfectly safe.

I went through tabulated-list.el and fixed everything I could find that
would be affected by the visibility of columns.  I don't believe I
missed anything but it is possible.

--=-=-=--




Acknowledgement sent to Thuna <thuna.cing@HIDDEN>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs@HIDDEN. Full text available.
Report forwarded to bug-gnu-emacs@HIDDEN:
bug#56345; Package emacs. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Mon, 23 Oct 2023 20:15:02 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.