unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Ted Zlatanov <tzz@lifelogs.com>
To: emacs-devel@gnu.org
Subject: Re: Patch: enhanced mark navigation commands
Date: Wed, 05 Mar 2008 13:48:10 -0600	[thread overview]
Message-ID: <86pru96jgl.fsf@lifelogs.com> (raw)
In-Reply-To: jwvwsohj8ux.fsf-monnier+emacs@gnu.org

On Wed, 05 Mar 2008 14:20:23 -0500 Stefan Monnier <monnier@iro.umontreal.ca> wrote: 

>> Would next-error and previous-error (which are useful for any motion to
>> "points of interest" and have aliases defined accordingly) be
>> appropriate here?  They already handle occur-mode, grep-mode, and
>> compilation-mode point of interest, and the intent is to provide a DWIM
>> interface.

>> It makes sense that if any of those three modes are not on, next-error
>> and previous-error should move to recent edit points.  If one of those
>> modes is on, we can provide an override, but I expect users to be happy
>> with the default behavior as I describe it.  What do you think?

SM> And then as soon as you run grep, diff, or compile, the feature just
SM> can't be used any more?  Doesn't sound too good to me,

I think it's possible to make this useful with navigation layers.

Layers 0-9 reserved for char/word/paragraph/page/etc motion
Layer 10: edits (what Adrian Robert's patch provides)
Layer 11: tags (ctags, etags, etc.); function/variable definitions
Layer 12: grep/diff/compile/occur points
Layer 13: buffers (like cycle-buffer)
Layer 14: Gnus articles or dired files or other bundles of information
Layer 15: Gnus groups (or other aggregators for layer 14)
Layer 16: Gnus topics (or other aggregators for layer 15)

Layers 10 and 11 may have to be swapped.  We may think of more layers,
and what I've listed above is just an idea.  The point is that we'll
give the user a way to move back and forth between things that are
interesting.  Selecting the motion layer can be done in some standard
way, e.g. next-error--10 or whatever makes sense.  I also don't know if
numerical layers will work as a concept, but they seem simple to
understand and configure.

Ted





  reply	other threads:[~2008-03-05 19:48 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-03-05  5:12 Patch: enhanced mark navigation commands Adrian Robert
2008-03-05  6:19 ` Miles Bader
2008-03-05 12:23   ` paul r
2008-03-05  6:41 ` Dan Nicolaescu
2008-03-06  0:57   ` Juri Linkov
2008-03-06  1:47     ` Dan Nicolaescu
2008-03-06  7:18       ` Drew Adams
2008-03-06 10:09       ` Juri Linkov
2008-03-09 21:55     ` Juri Linkov
2008-03-05 16:11 ` Ted Zlatanov
2008-03-05 19:20   ` Stefan Monnier
2008-03-05 19:48     ` Ted Zlatanov [this message]
2008-03-05 22:10       ` Miles Bader
2008-03-10 13:09         ` Ted Zlatanov
2008-03-10 22:34           ` Juri Linkov
2008-03-11 15:08             ` Ted Zlatanov
2008-03-06  0:54 ` Juri Linkov

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=86pru96jgl.fsf@lifelogs.com \
    --to=tzz@lifelogs.com \
    --cc=emacs-devel@gnu.org \
    /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).