From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Drew Adams Newsgroups: gmane.emacs.bugs Subject: bug#14940: 24.3.50; [PATCH] enhancement for `dired-hide-details-mode' Date: Tue, 23 Jul 2013 09:28:59 -0700 (PDT) Message-ID: <42783abc-5cff-41d5-8b9d-e7e641584cb6@default> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="__137459693954174641abhmt115.oracle.com" X-Trace: ger.gmane.org 1374597172 18284 80.91.229.3 (23 Jul 2013 16:32:52 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 23 Jul 2013 16:32:52 +0000 (UTC) To: 14940@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Tue Jul 23 18:32:50 2013 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1V1fW6-0001ea-DG for geb-bug-gnu-emacs@m.gmane.org; Tue, 23 Jul 2013 18:32:50 +0200 Original-Received: from localhost ([::1]:35858 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V1fW6-0004d0-0w for geb-bug-gnu-emacs@m.gmane.org; Tue, 23 Jul 2013 12:32:50 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:44150) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V1fTS-0008PZ-K8 for bug-gnu-emacs@gnu.org; Tue, 23 Jul 2013 12:30:07 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1V1fTR-0001Ox-4P for bug-gnu-emacs@gnu.org; Tue, 23 Jul 2013 12:30:06 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:50810) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V1fTR-0001OJ-0m for bug-gnu-emacs@gnu.org; Tue, 23 Jul 2013 12:30:05 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1V1fTP-0007s6-6E for bug-gnu-emacs@gnu.org; Tue, 23 Jul 2013 12:30:03 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Drew Adams Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 23 Jul 2013 16:30:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 14940 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.137459696230078 (code B ref -1); Tue, 23 Jul 2013 16:30:02 +0000 Original-Received: (at submit) by debbugs.gnu.org; 23 Jul 2013 16:29:22 +0000 Original-Received: from localhost ([127.0.0.1]:45125 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1V1fSi-0007ox-OG for submit@debbugs.gnu.org; Tue, 23 Jul 2013 12:29:21 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:42051) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1V1fSc-0007ob-GS for submit@debbugs.gnu.org; Tue, 23 Jul 2013 12:29:18 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1V1fSW-0000fp-9I for submit@debbugs.gnu.org; Tue, 23 Jul 2013 12:29:09 -0400 Original-Received: from lists.gnu.org ([2001:4830:134:3::11]:51775) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V1fSW-0000fj-6s for submit@debbugs.gnu.org; Tue, 23 Jul 2013 12:29:08 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:43760) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V1fSU-0006gN-Ur for bug-gnu-emacs@gnu.org; Tue, 23 Jul 2013 12:29:08 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1V1fST-0000fN-O5 for bug-gnu-emacs@gnu.org; Tue, 23 Jul 2013 12:29:06 -0400 Original-Received: from aserp1040.oracle.com ([141.146.126.69]:35371) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V1fST-0000fE-Et for bug-gnu-emacs@gnu.org; Tue, 23 Jul 2013 12:29:05 -0400 Original-Received: from acsinet21.oracle.com (acsinet21.oracle.com [141.146.126.237]) by aserp1040.oracle.com (Sentrion-MTA-4.3.1/Sentrion-MTA-4.3.1) with ESMTP id r6NGT2GE021417 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Tue, 23 Jul 2013 16:29:03 GMT Original-Received: from userz7021.oracle.com (userz7021.oracle.com [156.151.31.85]) by acsinet21.oracle.com (8.14.4+Sun/8.14.4) with ESMTP id r6NGT00N025963 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Tue, 23 Jul 2013 16:29:02 GMT Original-Received: from abhmt115.oracle.com (abhmt115.oracle.com [141.146.116.67]) by userz7021.oracle.com (8.14.4+Sun/8.14.4) with ESMTP id r6NGSxkW007875 for ; Tue, 23 Jul 2013 16:28:59 GMT X-Priority: 3 X-Mailer: Oracle Beehive Extensions for Outlook 2.0.1.7 (607090) [OL 12.0.6668.5000 (x86)] X-Source-IP: acsinet21.oracle.com [141.146.126.237] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.4.x-2.6.x [generic] X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 140.186.70.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:76601 Archived-At: --__137459693954174641abhmt115.oracle.com Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable `dired-hide-details-mode' is essentially a reimplementation of dired-details (by Rob Giardina). The Emacs 24 implementation of hiding details is better (more efficient) that that of dired-details, which is a good thing. But the behavior is not as good for users as that available with dired-details+. Attached is a patch that rectifies this. It gives users more control. These are the enhancements: 1. Users can decide whether the initial hide/show state of new Dired buffers reflects the last chosen state for a Dired buffer. This is decided by option `dired-hide-details-propagate'. Non-nil means propagate the last chosen state as the initial state of a new Dired buffer. 2. If `dired-hide-details-propagate' is nil, or if the user has not yet explicitly changed any Dired hide/show state, then option `dired-hide-details-initially' defines the initial state of a new Dired buffer. IOW, it specifies what the "last" state defaults to. In the patch the default value of each option is t, but this is open for discussion. In my experience with dired-details+ most users prefer to hide details by default and to let the last chosen state update the default state. But if we wanted to keep the traditional behavior by default then we would just set both options to nil by default. The main point is to give users a choice. Note that regardless of the option values, once a user has chosen a state for a given Dired buffer it remains in effect until s?he hits `(' to choose a different state for _that buffer_. IOW, the options affect only new Dired buffers, that is, buffers where the user has not yet used `('. A user display choice for a given buffer is never overridden. Initialization behavior applies also to `C-x C-v RET', that is, accepting the same directory as the alternate one to visit. This is in keeping with `find-alternate-file' resetting other Dired settings (markings, omissions, display order, switches, etc.). Reverting using `g', however, keeps the user's chosen display state; i.e., unlike `C-x C-v RET', the state is not reinitialized with `g'. Reasons to have non-nil default values for both options: a. `dired-hide-details-propagate': Hide details by default. Simpler, screen-space conservative. Show details on demand: `('. b. `dired-hide-details-propagate': Propagate last view by default. This essentially tells Emacs, "Don't do anything I haven't told you to do. Just keep doing what I last told you to do until I tell you otherwise." For more explanation of why it is a good idea for `dired-hide-details-propagate' ti be non-nil by default, see the thread on emacs-devel: http://lists.gnu.org/archive/html/emacs-devel/2013-07/msg00644.html In GNU Emacs 24.3.50.1 (i686-pc-mingw32) of 2013-07-14 on ODIEONE Bzr revision: 113423 lekktu@gmail.com-20130715004922-i67tg2ois14h3fpm Windowing system distributor `Microsoft Corp.', version 6.1.7601 Configured using: `configure --prefix=3D/c/Devel/emacs/binary --enable-checking=3Dyes,glyphs CFLAGS=3D'-O0 -g3' CPPFLAGS=3D'-Ic:/Devel/emacs/include' LDFLAGS=3D'-Lc:/Devel/emacs/lib'' --__137459693954174641abhmt115.oracle.com Content-Type: application/octet-stream; name="dired-2013-07-20.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="dired-2013-07-20.patch" ZGlmZiAtY3cgZGlyZWQuZWwgZGlyZWQtcGF0Y2hlZC0yMDEzLTA3LTIwLmVsCioqKiBkaXJlZC5l bAlTYXQgSnVsIDIwIDEyOjEwOjU3IDIwMTMKLS0tIGRpcmVkLXBhdGNoZWQtMjAxMy0wNy0yMC5l bAlTYXQgSnVsIDIwIDEyOjE4OjI4IDIwMTMKKioqKioqKioqKioqKioqCioqKiAyNDksMjU0ICoq KioKLS0tIDI0OSwyNjYgLS0tLQogICAgOnZlcnNpb24gIjI0LjQiCiAgICA6Z3JvdXAgJ2RpcmVk KQogIAorIChkZWZjdXN0b20gZGlyZWQtaGlkZS1kZXRhaWxzLWluaXRpYWxseSB0CisgICAiTm9u LW5pbCBtZWFucyBoaWRlIGRldGFpbHMgaW4gRGlyZWQgZnJvbSB0aGUgb3V0c2V0LiIKKyAgIDp0 eXBlICdib29sZWFuIDp2ZXJzaW9uICIyNC40IiA6Z3JvdXAgJ2RpcmVkKQorIAorIChkZWZjdXN0 b20gZGlyZWQtaGlkZS1kZXRhaWxzLXByb3BhZ2F0ZSB0CisgICAiTm9uLW5pbCBtZWFucyBkaXNw bGF5IHRoZSBuZXh0IERpcmVkIGJ1ZmZlciB0aGUgc2FtZSB3YXkgYXMgdGhlIGxhc3QuCisgVGhl IGxhc3QgYGRpcmVkLWhpZGUtZGV0YWlscy1tb2RlJyB2YWx1ZSBzZXQgaXMgdXNlZCBieSB0aGUg bmV4dCBEaXJlZAorIGJ1ZmZlciBjcmVhdGVkLiIKKyAgIDp0eXBlICdib29sZWFuIDp2ZXJzaW9u ICIyNC40IiA6Z3JvdXAgJ2RpcmVkKQorIAorIAorIAogIDs7IEludGVybmFsIHZhcmlhYmxlcwog IAogIChkZWZ2YXIgZGlyZWQtbWFya2VyLWNoYXIgPyoJCTsgdGhlIGFuc3dlciBpcyA0MgoqKioq KioqKioqKioqKioKKioqIDI5NywzMDIgKioqKgotLS0gMzA5LDMyMiAtLS0tCiAgCiAgKHB1dCAn ZGlyZWQtYWN0dWFsLXN3aXRjaGVzICdzYWZlLWxvY2FsLXZhcmlhYmxlICdkaXJlZC1zYWZlLXN3 aXRjaGVzLXApCiAgCisgKGRlZnZhciBkaXJlZC1oaWRlLWRldGFpbHMtbGFzdC1zdGF0ZSBkaXJl ZC1oaWRlLWRldGFpbHMtaW5pdGlhbGx5CisgICAiTGFzdCBgZGlyZWQtaGlkZS1kZXRhaWxzLW1v ZGUnIHZhbHVlLgorIEluaXRpYWxpemVkIHRvIHRoZSB2YWx1ZSBvZiBvcHRpb24gYGRpcmVkLWhp ZGUtZGV0YWlscy1pbml0aWFsbHknLiIpCisgCisgKGRlZnZhciBkaXJlZC1oaWRlLWRldGFpbHMt dG9nZ2xlZCBuaWwKKyAgICJOb24tbmlsIG1lYW5zIHlvdSBoYXZlIGFscmVhZHkgdG9nZ2xlZCBo aWRpbmcgZGV0YWlscyBpbiB0aGlzIGJ1ZmZlci4iKQorIChtYWtlLXZhcmlhYmxlLWJ1ZmZlci1s b2NhbCAnZGlyZWQtaGlkZS1kZXRhaWxzLXRvZ2dsZWQpCisgCiAgKGRlZnZhciBkaXJlZC1yZS1p bm9kZS1zaXplICJbMC05IFx0XSoiCiAgICAiUmVnZXhwIGZvciBvcHRpb25hbCBpbml0aWFsIGlu b2RlIGFuZCBmaWxlIHNpemUgYXMgbWFkZSBieSBgbHMgLWkgLXMnLiIpCiAgCioqKioqKioqKioq KioqKgoqKiogMjI2NSwyMjg2ICoqKioKICAgICAgICAoc3Vic3RyaW5nIGZpbGUgKG1hdGNoLWVu ZCAwKSkKICAgICAgZmlsZSkpCiAgDAohIDs7OyBNaW5vciBtb2RlIGZvciBoaWRpbmcgZGV0YWls cwogIDs7OyMjI2F1dG9sb2FkCiAgKGRlZmluZS1taW5vci1tb2RlIGRpcmVkLWhpZGUtZGV0YWls cy1tb2RlCiAgICAiSGlkZSBkZXRhaWxzIGluIERpcmVkIG1vZGUuIgogICAgOmdyb3VwICdkaXJl ZAohICAgKHVubGVzcyAoZGVyaXZlZC1tb2RlLXAgJ2RpcmVkLW1vZGUpCiEgICAgIChlcnJvciAi Tm90IGEgRGlyZWQgYnVmZmVyIikpCiAgICAoZGlyZWQtaGlkZS1kZXRhaWxzLXVwZGF0ZS1pbnZp c2liaWxpdHktc3BlYykKICAgIChpZiBkaXJlZC1oaWRlLWRldGFpbHMtbW9kZQohICAgICAgIChh ZGQtaG9vayAnd2RpcmVkLW1vZGUtaG9vawohIAkJJ2RpcmVkLWhpZGUtZGV0YWlscy11cGRhdGUt aW52aXNpYmlsaXR5LXNwZWMKISAJCW5pbAohIAkJdCkKISAgICAgKHJlbW92ZS1ob29rICd3ZGly ZWQtbW9kZS1ob29rCiEgCQkgJ2RpcmVkLWhpZGUtZGV0YWlscy11cGRhdGUtaW52aXNpYmlsaXR5 LXNwZWMKISAJCSB0KSkpCiAgCiAgKGRlZnVuIGRpcmVkLWhpZGUtZGV0YWlscy11cGRhdGUtaW52 aXNpYmlsaXR5LXNwZWMgKCkKICAgIChmdW5jYWxsIChpZiBkaXJlZC1oaWRlLWRldGFpbHMtbW9k ZQotLS0gMjI4NSwyMzA5IC0tLS0KICAgICAgICAoc3Vic3RyaW5nIGZpbGUgKG1hdGNoLWVuZCAw KSkKICAgICAgZmlsZSkpCiAgDAohIDs7OyBNaW5vciBtb2RlcyBmb3IgaGlkaW5nIGRldGFpbHMK ISAKISA7OzsjIyNhdXRvbG9hZAohIChkZWZpbmUtZ2xvYmFsaXplZC1taW5vci1tb2RlIGdsb2Jh bC1kaXJlZC1oaWRlLWRldGFpbHMtbW9kZSBkaXJlZC1oaWRlLWRldGFpbHMtbW9kZQohICAgZGly ZWQtaGlkZS1kZXRhaWxzLWlmLWRpcmVkKQohIAogIDs7OyMjI2F1dG9sb2FkCiAgKGRlZmluZS1t aW5vci1tb2RlIGRpcmVkLWhpZGUtZGV0YWlscy1tb2RlCiAgICAgICJIaWRlIGRldGFpbHMgaW4g RGlyZWQgbW9kZS4iCisgICAoYW5kIGRpcmVkLWhpZGUtZGV0YWlscy1wcm9wYWdhdGUgIGRpcmVk LWhpZGUtZGV0YWlscy1sYXN0LXN0YXRlKQogICAgOmdyb3VwICdkaXJlZAohICAgKHVubGVzcyAo ZGVyaXZlZC1tb2RlLXAgJ2RpcmVkLW1vZGUpIChlcnJvciAiTm90IGEgRGlyZWQgYnVmZmVyIikp CiAgICAoZGlyZWQtaGlkZS1kZXRhaWxzLXVwZGF0ZS1pbnZpc2liaWxpdHktc3BlYykKKyAgIChz ZXRxIGRpcmVkLWhpZGUtZGV0YWlscy10b2dnbGVkICB0KQorICAgKHdoZW4gZGlyZWQtaGlkZS1k ZXRhaWxzLXByb3BhZ2F0ZQorICAgICAoc2V0cSBkaXJlZC1oaWRlLWRldGFpbHMtbGFzdC1zdGF0 ZSAgZGlyZWQtaGlkZS1kZXRhaWxzLW1vZGUpKQogICAgKGlmIGRpcmVkLWhpZGUtZGV0YWlscy1t b2RlCiEgICAgICAgKGFkZC1ob29rICd3ZGlyZWQtbW9kZS1ob29rICdkaXJlZC1oaWRlLWRldGFp bHMtdXBkYXRlLWludmlzaWJpbGl0eS1zcGVjIG5pbCB0KQohICAgICAocmVtb3ZlLWhvb2sgJ3dk aXJlZC1tb2RlLWhvb2sgJ2RpcmVkLWhpZGUtZGV0YWlscy11cGRhdGUtaW52aXNpYmlsaXR5LXNw ZWMgdCkpKQogIAogIChkZWZ1biBkaXJlZC1oaWRlLWRldGFpbHMtdXBkYXRlLWludmlzaWJpbGl0 eS1zcGVjICgpCiAgICAoZnVuY2FsbCAoaWYgZGlyZWQtaGlkZS1kZXRhaWxzLW1vZGUKKioqKioq KioqKioqKioqCioqKiAyMjk5LDIzMDQgKioqKgotLS0gMjMyMiwyMzQyIC0tLS0KICAJICAgICAn cmVtb3ZlLWZyb20taW52aXNpYmlsaXR5LXNwZWMpCiAgCSAgICdkaXJlZC1oaWRlLWRldGFpbHMt bGluaykpCiAgCisgKGRlZnVuIGRpcmVkLWhpZGUvc2hvdy1kZXRhaWxzICgpCisgICAiSGlkZS9z aG93IGRldGFpbHMgYWNjb3JkaW5nIHRvIHVzZXIgb3B0aW9ucy4KKyBJZiBgZGlyZWQtaGlkZS1k ZXRhaWxzLXByb3BhZ2F0ZScgaXMgbm9uLW5pbCBhbmQgZGV0YWlscyBoYXZlCisgbmV2ZXIgYmVl biBoaWRkZW4gaW4gdGhlIGJ1ZmZlciwgdGhlbiBoaWRlL3Nob3cgYWNjb3JkaW5nIHRvIHlvdXIg bGFzdAorIGhpZGUvc2hvdyBjaG9pY2UgaW4gYW55IG90aGVyIERpcmVkIGJ1ZmZlciBvciwgaWYg bm8gbGFzdCBjaG9pY2UsCisgYWNjb3JkaW5nIHRvIG9wdGlvbiBgZGlyZWQtaGlkZS1kZXRhaWxz LWluaXRpYWxseScuIgorICAgKHVubGVzcyAob3IgZGlyZWQtaGlkZS1kZXRhaWxzLXRvZ2dsZWQg OyBObyBvcCBpZiBoaWRlL3Nob3cgYWxyZWFkeSBzZXQuCisgICAgICAgICAgICAgICAoYnVmZmVy LW5hcnJvd2VkLXApKSA7IE5vLW9wIHdoZW4gc2hvd2luZyBqdXN0IG5ld2x5IGNvcGllZCBmaWxl IGV0Yy4KKyAgICAgKGNvbmQgKGRpcmVkLWhpZGUtZGV0YWlscy1wcm9wYWdhdGUKKyAgICAgICAg ICAgIChkaXJlZC1oaWRlLWRldGFpbHMtbW9kZSAoaWYgZGlyZWQtaGlkZS1kZXRhaWxzLWxhc3Qt c3RhdGUgMSAtMSkpKQorICAgICAgICAgICAoZGlyZWQtaGlkZS1kZXRhaWxzLWluaXRpYWxseQor ICAgICAgICAgICAgKGRpcmVkLWhpZGUtZGV0YWlscy1tb2RlIDEpKSkpKQorIAorIChhZGQtaG9v ayAnZGlyZWQtYWZ0ZXItcmVhZGluLWhvb2sgIydkaXJlZC1oaWRlL3Nob3ctZGV0YWlscykKKyAM CiAgOzs7IEZ1bmN0aW9ucyBmb3IgZmluZGluZyB0aGUgZmlsZSBuYW1lIGluIGEgZGlyZWQgYnVm ZmVyIGxpbmUuCiAgCiAgKGRlZnZhciBkaXJlZC1wZXJtaXNzaW9uLWZsYWdzLXJlZ2V4cAoKRGlm ZiBmaW5pc2hlZC4gIFNhdCBKdWwgMjAgMTI6MjA6MzUgMjAxMwo= --__137459693954174641abhmt115.oracle.com--