unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Josh <josh@foxtail.org>
To: Tak Kunihiro <tkk@misasa.okayama-u.ac.jp>
Cc: 16214@debbugs.gnu.org, Roland McGrath <roland@hack.frob.com>
Subject: bug#16214: Consistency in dired-, occur-, and grep-mode
Date: Sat, 21 Dec 2013 12:15:05 -0800	[thread overview]
Message-ID: <CANdFEAFOkivkzuzcmWdq8r5zKwoKjY-o89gxqmVKA5MsOEHC3g@mail.gmail.com> (raw)
In-Reply-To: <20131221.224043.270400015.tkk@misasa.okayama-u.ac.jp>

On Sat, Dec 21, 2013 at 5:40 AM, Tak Kunihiro
<tkk@misasa.okayama-u.ac.jp> 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





  parent reply	other threads:[~2013-12-21 20:15 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-12-21 13:40 bug#16214: Consistency in dired-, occur-, and grep-mode Tak Kunihiro
2013-12-21 19:23 ` Drew Adams
2013-12-21 20:15 ` Josh [this message]
2013-12-21 21:30   ` Juri Linkov
2013-12-22 11:48     ` Tak Kunihiro
2013-12-22 21:44       ` Juri Linkov
2013-12-23 11:34         ` Tak Kunihiro
2013-12-23 21:52           ` Juri Linkov
2013-12-24 23:15             ` Tak Kunihiro
2013-12-25 20:57               ` Juri Linkov
2013-12-28  9:57                 ` Tak Kunihiro
2022-02-10  8:27         ` Lars Ingebrigtsen
2022-02-10  9:26           ` Tak Kunihiro
2022-02-10 11:37             ` Lars Ingebrigtsen
2022-02-11  5:54               ` Tak Kunihiro
2022-02-12  3:57           ` Richard Stallman
2022-02-12  8:16             ` Michael Albinus
2022-02-14  4:13               ` Richard Stallman
2022-02-14  6:52                 ` Michael Albinus
2022-02-15  4:30                   ` Richard Stallman
2022-02-12 19:12           ` Howard Melman
2022-02-12 20:43             ` Howard Melman
2022-02-14  4:14               ` Richard Stallman
2022-02-17 16:28               ` Howard Melman
2022-02-17 17:12                 ` bug#16214: [External] : " Drew Adams
2022-02-20  1:43                 ` Tak Kunihiro
2022-02-20 18:17                   ` Howard Melman

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CANdFEAFOkivkzuzcmWdq8r5zKwoKjY-o89gxqmVKA5MsOEHC3g@mail.gmail.com \
    --to=josh@foxtail.org \
    --cc=16214@debbugs.gnu.org \
    --cc=roland@hack.frob.com \
    --cc=tkk@misasa.okayama-u.ac.jp \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).