From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: =?utf-8?Q?=C3=93scar_Fuentes?= Newsgroups: gmane.emacs.devel,gmane.emacs.help Subject: Content navigation (was: On language-dependent defaults for character-folding) Date: Sat, 13 Feb 2016 18:58:59 +0100 Message-ID: <87si0wqyos.fsf_-_@wanadoo.es> References: <87mvr9wxqz.fsf@wanadoo.es> <87io1xwq1e.fsf@wanadoo.es> <87vb5wvzfz.fsf@mail.linkov.net> <87io1wt4cc.fsf@wanadoo.es> <8737syoima.fsf@mail.linkov.net> <871t8iu277.fsf@wanadoo.es> <87fuwwr2eq.fsf@mbork.pl> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Trace: ger.gmane.org 1455386388 15625 80.91.229.3 (13 Feb 2016 17:59:48 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sat, 13 Feb 2016 17:59:48 +0000 (UTC) Cc: help-gnu-emacs@gnu.org To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat Feb 13 18:59:33 2016 Return-path: Envelope-to: ged-emacs-devel@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 1aUeTj-0005mx-Ty for ged-emacs-devel@m.gmane.org; Sat, 13 Feb 2016 18:59:32 +0100 Original-Received: from localhost ([::1]:43829 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aUeTj-0005yM-7r for ged-emacs-devel@m.gmane.org; Sat, 13 Feb 2016 12:59:31 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:58956) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aUeTW-0005yE-2k for emacs-devel@gnu.org; Sat, 13 Feb 2016 12:59:19 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aUeTS-0006q5-13 for emacs-devel@gnu.org; Sat, 13 Feb 2016 12:59:18 -0500 Original-Received: from plane.gmane.org ([80.91.229.3]:54598) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aUeTR-0006mg-Pb for emacs-devel@gnu.org; Sat, 13 Feb 2016 12:59:13 -0500 Original-Received: from list by plane.gmane.org with local (Exim 4.69) (envelope-from ) id 1aUeTK-0005X1-Ca for emacs-devel@gnu.org; Sat, 13 Feb 2016 18:59:06 +0100 Original-Received: from 173.red-83-43-64.dynamicip.rima-tde.net ([83.43.64.173]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Sat, 13 Feb 2016 18:59:06 +0100 Original-Received: from ofv by 173.red-83-43-64.dynamicip.rima-tde.net with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Sat, 13 Feb 2016 18:59:06 +0100 X-Injected-Via-Gmane: http://gmane.org/ Original-Followup-To: gmane.emacs.help Original-Lines: 52 Original-X-Complaints-To: usenet@ger.gmane.org X-Gmane-NNTP-Posting-Host: 173.red-83-43-64.dynamicip.rima-tde.net User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.50 (gnu/linux) Cancel-Lock: sha1:c3pb16UQYmH6Kt8jsFRVbUc3K/M= X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 80.91.229.3 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:199894 gmane.emacs.help:109158 Archived-At: Marcin Borkowski writes: > On 2016-02-12, at 02:50, Óscar Fuentes wrote: > >>> Isearch shines in navigation. >> >> My opinion is that Isearch is terrible for navigation. You may be >> interested on ace-jump or avy, for jumping to a point that is visible, >> or a plethora of terrific packages for jumping to a point that is not >> visible. > > I know this is a bit OT, but could you enumerate some of those packages? > I use avy, but I'd be interestedin navigating to places I don't see, too. It all depends on personal preferences, will to get accustomed to new ways of doing things, etc. It also depends on the type of content you work with (code, plain text, org files...) You can start looking at what Emacs provides out of the box: registers, the mark ring, imenu... Also modes that hide the content you don't care about: hide-show mode, narrow to region... smaller content, easier navigation. A direct relacement for Isearch which is much more adequate for navigation (and searching in general) is Swiper. There are packages for quickly visiting special places, such as goto-change for jumping to the edited sites. Packages that depend on more or less specialized info provided by ctags and similar analyzers. More sophisticated ones such as Semantic, Clang... In the end, the key parts are how the information is managed by the search mechanism (from simple character sequences to tokens with attached meaning), the match system that links your input to candidate targets and the UI that shows those candidates and allows you to jump to them. Personally, I use registers, goto-change, TAGS tables plus etags and probably something more that I can't remember right now. For the completion system and UI, ido with the flx matching algorithm. flx-isearch is much more convenient than Isearch for searching for identifiers on my code. Instead of ido other people use helm or ivy as completion systems (ivy comes with swiper.) This is just scratching the surface. I'm sure that I'm omitting many interesting packages. Others can chime in with their favourite packages. Follow ups set to emacs-help.