From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Juri Linkov Newsgroups: gmane.emacs.devel Subject: Re: Patch: enhanced mark navigation commands Date: Tue, 11 Mar 2008 00:34:32 +0200 Organization: JURTA Message-ID: <87pru2nslr.fsf@jurta.org> References: <55f7df060803042112w380b5170qe964002c6c06ab01@mail.gmail.com> <86r6ep8821.fsf@lifelogs.com> <86pru96jgl.fsf@lifelogs.com> <87ablcom9a.fsf@catnip.gol.com> <86pru2vi77.fsf@lifelogs.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: ger.gmane.org 1205189375 30814 80.91.229.12 (10 Mar 2008 22:49:35 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 10 Mar 2008 22:49:35 +0000 (UTC) Cc: emacs-devel@gnu.org To: Ted Zlatanov Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Mar 10 23:50:03 2008 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1JYqok-0006dR-VT for ged-emacs-devel@m.gmane.org; Mon, 10 Mar 2008 23:50:03 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1JYqoC-0003y4-M3 for ged-emacs-devel@m.gmane.org; Mon, 10 Mar 2008 18:49:28 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1JYqn5-0003FZ-Pn for emacs-devel@gnu.org; Mon, 10 Mar 2008 18:48:19 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1JYqn4-0003Da-7O for emacs-devel@gnu.org; Mon, 10 Mar 2008 18:48:19 -0400 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1JYqn3-0003DC-NE for emacs-devel@gnu.org; Mon, 10 Mar 2008 18:48:17 -0400 Original-Received: from relay03.kiev.sovam.com ([62.64.120.201]) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1JYqn3-00088s-04 for emacs-devel@gnu.org; Mon, 10 Mar 2008 18:48:17 -0400 Original-Received: from [83.170.232.243] (helo=smtp.svitonline.com) by relay03.kiev.sovam.com with esmtp (Exim 4.67) (envelope-from ) id 1JYqmt-0003ah-4Q; Tue, 11 Mar 2008 00:48:15 +0200 In-Reply-To: <86pru2vi77.fsf@lifelogs.com> (Ted Zlatanov's message of "Mon, 10 Mar 2008 08:09:48 -0500") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.0.60 (x86_64-unknown-linux-gnu) X-Scanner-Signature: 669e5d776fa0e81a52da9f410dfff76f X-DrWeb-checked: yes X-SpamTest-Envelope-From: juri@jurta.org X-SpamTest-Group-ID: 00000000 X-SpamTest-Header: Not Detected X-SpamTest-Info: Profiles 2377 [Mar 10 2008] X-SpamTest-Info: helo_type=3 X-SpamTest-Info: {HEADERS: header Content-Type found without required header Content-Transfer-Encoding} X-SpamTest-Method: none X-SpamTest-Rate: 11 X-SpamTest-Status: Not detected X-SpamTest-Status-Extended: not_detected X-SpamTest-Version: SMTP-Filter Version 3.0.0 [0255], KAS30/Release X-detected-kernel: by monty-python.gnu.org: FreeBSD 6.x (1) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:92101 Archived-At: >>> 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. > > MB> To be honest, it sounds maddeningly annoying... > > After thinking about it, you're right. I still think there's a need for > more unified navigation commands than the hodge-podge we have in Emacs > now, but this is not the way to do it. I doubt that it is possible to build a hierarchy of context-dependent navigation layers. Do you remember how many problems were caused by just two levels of next-error navigation (when next-error from the grep buffer arrives at a diff output file, what the next call to next-error should do: continue visiting grep matches or start visiting diff hunks)? What would be more useful I think is to find a unified key prefix for navigation commands. For instance, `M-g e M-n' would go to the next error, `M-g t M-n' - to the next tag, `M-g d f M-n' - to the next diff file in the diff buffer `M-g d h M-n' - to the next diff hunk in the diff buffer, etc. Of course, sometimes this might be too much to type, but for every next call we could just accept the last key (similar to `C-x z z z') to repeat the last command like `M-g e M-n M-n M-n'. -- Juri Linkov http://www.jurta.org/emacs/