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: HTML-Info design Date: Tue, 30 Dec 2014 01:02:50 +0200 Organization: LINKOV.NET Message-ID: <878uhqt5yd.fsf@mail.linkov.net> References: <87y4q1fekv.fsf@fencepost.gnu.org> <87fvc858c6.fsf@uwakimon.sk.tsukuba.ac.jp> <87ioh4nf8k.fsf@ferrier.me.uk> <83y4pzptpx.fsf@gnu.org> <871tnr1gqo.fsf@ferrier.me.uk> <83bnmvowdb.fsf@gnu.org> <83ppbanqhe.fsf@gnu.org> <87vbl2xigp.fsf@ferrier.me.uk> <83ioh2nlow.fsf@gnu.org> <87sig6xech.fsf@ferrier.me.uk> <83fvc5ni0u.fsf@gnu.org> <87k31fwwyv.fsf@ferrier.me.uk> <87bnmq9ibf.fsf@ferrier.me.uk> <87lhlrx5fc.fsf@building.gnus.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1419894300 15520 80.91.229.3 (29 Dec 2014 23:05:00 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 29 Dec 2014 23:05:00 +0000 (UTC) Cc: Richard Stallman , emacs-devel@gnu.org, Stefan Monnier , Nic Ferrier , eliz@gnu.org, stephen@xemacs.org To: Lars Ingebrigtsen Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Dec 30 00:04:54 2014 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 1Y5jMr-0006bh-If for ged-emacs-devel@m.gmane.org; Tue, 30 Dec 2014 00:04:53 +0100 Original-Received: from localhost ([::1]:35055 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Y5jMr-0006Ou-0O for ged-emacs-devel@m.gmane.org; Mon, 29 Dec 2014 18:04:53 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:34322) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Y5jMc-0006Of-6f for emacs-devel@gnu.org; Mon, 29 Dec 2014 18:04:39 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Y5jMb-0005EC-3C for emacs-devel@gnu.org; Mon, 29 Dec 2014 18:04:38 -0500 Original-Received: from ps18281.dreamhost.com ([69.163.222.226]:47398 helo=ps18281.dreamhostps.com) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Y5jMV-0005DL-95; Mon, 29 Dec 2014 18:04:31 -0500 Original-Received: from localhost.linkov.net (ps18281.dreamhostps.com [69.163.222.226]) by ps18281.dreamhostps.com (Postfix) with ESMTP id DA8DE30B1A3157; Mon, 29 Dec 2014 15:04:27 -0800 (PST) In-Reply-To: <87lhlrx5fc.fsf@building.gnus.org> (Lars Ingebrigtsen's message of "Sun, 28 Dec 2014 14:36:07 +0100") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.50 (x86_64-pc-linux-gnu) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 69.163.222.226 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:180865 Archived-At: > `M-x eww RET > http://www.gnu.org/software/emacs/manual/html_node/emacs/index.html RET' > > and you're off. The `n'/`p'/`u' commands work as in Info already, so > the only thing that's missing is the index (which is trivial to add). Another thing that's missing is a multi-page search like in Info. It's trivial to add it with this small patch: diff --git a/lisp/net/eww.el b/lisp/net/eww.el index 9d787d3..74a0f4b 100644 --- a/lisp/net/eww.el +++ b/lisp/net/eww.el @@ -705,6 +705,8 @@ (define-derived-mode eww-mode nil "eww" (setq-local tool-bar-map eww-tool-bar-map)) ;; desktop support (setq-local desktop-save-buffer 'eww-desktop-misc-data) + ;; multi-page isearch support + (setq-local multi-isearch-next-buffer-function 'eww-isearch-next-buffer) (buffer-disable-undo) (setq buffer-read-only t)) @@ -1884,6 +1886,17 @@ (add-to-list 'desktop-locals-to-save (add-to-list 'desktop-buffer-mode-handlers '(eww-mode . eww-restore-desktop)) +;;; Isearch support + +(defun eww-isearch-next-buffer (&optional buffer wrap) + "Go to the next page to search using `rel' attribute for navigation." + (if wrap + (eww-top-url) + (if isearch-forward + (eww-next-url) + (eww-previous-url))) + (current-buffer)) + (provide 'eww) ;;; eww.el ends here