From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Josh Newsgroups: gmane.emacs.bugs Subject: bug#16214: Consistency in dired-, occur-, and grep-mode Date: Sat, 21 Dec 2013 12:15:05 -0800 Message-ID: References: <20131221.224043.270400015.tkk@misasa.okayama-u.ac.jp> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 X-Trace: ger.gmane.org 1387656971 26980 80.91.229.3 (21 Dec 2013 20:16:11 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sat, 21 Dec 2013 20:16:11 +0000 (UTC) Cc: 16214@debbugs.gnu.org, Roland McGrath To: Tak Kunihiro Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Sat Dec 21 21:16:15 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 1VuSy7-0005TJ-6h for geb-bug-gnu-emacs@m.gmane.org; Sat, 21 Dec 2013 21:16:15 +0100 Original-Received: from localhost ([::1]:55447 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VuSy6-0003Pu-NO for geb-bug-gnu-emacs@m.gmane.org; Sat, 21 Dec 2013 15:16:14 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:51873) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VuSxz-0003Pk-78 for bug-gnu-emacs@gnu.org; Sat, 21 Dec 2013 15:16:11 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1VuSxu-0003uE-R4 for bug-gnu-emacs@gnu.org; Sat, 21 Dec 2013 15:16:07 -0500 Original-Received: from debbugs.gnu.org ([140.186.70.43]:47832) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VuSxu-0003uA-Na for bug-gnu-emacs@gnu.org; Sat, 21 Dec 2013 15:16:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1VuSxt-0002ji-S8 for bug-gnu-emacs@gnu.org; Sat, 21 Dec 2013 15:16:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Josh Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 21 Dec 2013 20:16:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 16214 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 16214-submit@debbugs.gnu.org id=B16214.138765694210478 (code B ref 16214); Sat, 21 Dec 2013 20:16:01 +0000 Original-Received: (at 16214) by debbugs.gnu.org; 21 Dec 2013 20:15:42 +0000 Original-Received: from localhost ([127.0.0.1]:33618 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1VuSxX-0002it-HY for submit@debbugs.gnu.org; Sat, 21 Dec 2013 15:15:40 -0500 Original-Received: from mail-we0-f178.google.com ([74.125.82.178]:45287) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1VuSxU-0002ij-8U for 16214@debbugs.gnu.org; Sat, 21 Dec 2013 15:15:37 -0500 Original-Received: by mail-we0-f178.google.com with SMTP id u57so3687532wes.23 for <16214@debbugs.gnu.org>; Sat, 21 Dec 2013 12:15:35 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc:content-type; bh=YkDlLZXHvOtMcZTjee9aAaUIlJ4fCr4xEoeqD2fs+CM=; b=glB1MUBHk0+wc12xZpCmwdD9v+G8GFSi2rezvy8BJwkKZKX0cxu3+t56HywV3IDg5I h+60bWd8fvDs1vpva+/ueYq69/cn84twEDCLNtV7J7N+ODzpScDVmUZbqLhq97PX7qQQ N8q7XGgXfl4I521lU9TNM1Yoo38tNjG+wEMRxPY+nKUx2elTB51WHeE00HQIJXVESoPK p5jd8pUMzoTTkjLj75iRha4BytiR4skF00ONRxFkG+DGNW9l1veNrUJZjn6VtV65viIm +RXfNOya/V8OAz0RJFt+IWo1cBSRNMoeqK2jqcF8sRtbI79eYYWou5aiYhud4EkFpC9h cVKQ== X-Gm-Message-State: ALoCoQld3mleRFTQCEpNreGYIv5U6ydr8vROzWuY948gaRc1ZnycI8+DKM+GJRkVvglZ1iBVE7Yl X-Received: by 10.180.19.72 with SMTP id c8mr13107962wie.24.1387656935240; Sat, 21 Dec 2013 12:15:35 -0800 (PST) Original-Received: by 10.194.24.7 with HTTP; Sat, 21 Dec 2013 12:15:05 -0800 (PST) In-Reply-To: <20131221.224043.270400015.tkk@misasa.okayama-u.ac.jp> X-Google-Sender-Auth: hMpiT8Hr-5Pxk-fACyD87Qd6XNY 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:82362 Archived-At: On Sat, Dec 21, 2013 at 5:40 AM, Tak Kunihiro wrote: > This is my first post to Emacs-related mailing list. Roland suggested > me to post here. Apologize in advance if my behavior is something > inappropriate. Thanks for posting this! > I am new to Emacs and use dired, occur, and grep everyday. When I > jump to a corresponding file from there, I do not pay much attention > which mode I am at. > > I am eager to have similar interface with similar key-map in three > modes. I see some functions are missing in some modes. Something > like following will improve consistency among three major-modes. I'd also like to see these modes' interfaces for similar functionality become more consistent. They already have similarities such as binding `g' to logical refresh operations and further harmonization would be great. Another difference between their interfaces that I'd like to see reconciled is the key binding to make these buffers editable, i.e. to enable the functionality provided by Emacs' `wdired-mode' and `occur-edit-mode', and the third-party wgrep library[0]. Though the bindings to commit and abort edits are consistent between the three, the enablement bindings are not. I haven't managed to keep them straight yet so I sometimes hit `e' in a dired buffer and end up visiting the file at point instead of enabling wdired, and similarly sometimes hit C-x C-q in an occur buffer which calls the standard `read-only-mode' instead of enabling `occur-edit-mode'. |------------+----------------------------+---------------------+----------------------| | Mode | Enable editing mode | Commit/finish edits | Abort edits | |------------+----------------------------+---------------------+----------------------| | occur-edit | e | C-c C-c | N/A | | | occur-edit-mode | occur-cease-edit | | |------------+----------------------------+---------------------+----------------------| | wdired | C-x C-q | C-c C-c | C-c C-k | | | dired-toggle-read-only | wdired-finish-edit | wdired-abort-changes | |------------+----------------------------+---------------------+----------------------| | wgrep | C-c C-p | C-c C-c | C-c C-k | | | wgrep-change-to-wgrep-mode | wgrep-finish-edit | wgrep-abort-changes | |------------+----------------------------+---------------------+----------------------| In regard to your proposed C-o and SPC bindings, I wonder if it would be worthwhile to extend `next-error-follow-minor-mode' to support dired, perhaps including the ability to restrict which files were displayed via regexps or a function. > Please consider my request to make fundamental interface of three > major-modes to be more consistent by default. Although key-map could > be personal preference, and my code could be pretty bad, I hope this > post will be a start. Users can always customize bindings to suit their taste, but a consistent set of defaults makes Emacs more accessible to new users and makes guesses about where to find desired functionality more likely to be correct. > Best regards, > Tak [0] https://github.com/mhayashi1120/Emacs-wgrep Cheers, Josh