From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: "Juanma Barranquero" Newsgroups: gmane.emacs.devel Subject: Re: "Pager" page-up and -down, why not merge? Date: Thu, 5 Jun 2008 00:09:12 +0200 Message-ID: References: <5896C8E2-D065-4B8E-927F-8784062241EF@interstitiality.net> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1212617374 1338 80.91.229.12 (4 Jun 2008 22:09:34 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 4 Jun 2008 22:09:34 +0000 (UTC) Cc: Adrian Robert , emacs- devel To: "Stefan Monnier" Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Jun 05 00:10:15 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 1K41BJ-00054o-7g for ged-emacs-devel@m.gmane.org; Thu, 05 Jun 2008 00:10:09 +0200 Original-Received: from localhost ([127.0.0.1]:57408 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1K41AW-00068G-NF for ged-emacs-devel@m.gmane.org; Wed, 04 Jun 2008 18:09:20 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1K41AS-000685-6E for emacs-devel@gnu.org; Wed, 04 Jun 2008 18:09:16 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1K41AQ-00067S-NB for emacs-devel@gnu.org; Wed, 04 Jun 2008 18:09:15 -0400 Original-Received: from [199.232.76.173] (port=53741 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1K41AQ-00067L-7R for emacs-devel@gnu.org; Wed, 04 Jun 2008 18:09:14 -0400 Original-Received: from wa-out-1112.google.com ([209.85.146.179]:39222) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1K41AP-00084B-Nn for emacs-devel@gnu.org; Wed, 04 Jun 2008 18:09:14 -0400 Original-Received: by wa-out-1112.google.com with SMTP id m34so192549wag.10 for ; Wed, 04 Jun 2008 15:09:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:to :subject:cc:in-reply-to:mime-version:content-type :content-transfer-encoding:content-disposition:references; bh=gM+4fwfC0+zJs/NCODm453170t684utpkqJ2ZXwbClc=; b=d3g3lhpM6OAyGGO7b6YjC1V2nLz/Qs+AE56zQj8GcwiuSuWUox0I2mmyHm28SOEvTJ AerxayWJZuQv9ive6CS/clbTZjpZ64OAcAX4fWnPa6iQRhafpkJhOmax3CnUMb50TNxC 1ahDpKscl76q7ch3Epm68E9WR6wslI/hkvO3E= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:to:subject:cc:in-reply-to:mime-version :content-type:content-transfer-encoding:content-disposition :references; b=UBOX81aRDPaWQkVzPIrcvrETnJeBwr5FLW8p+1eRcAlhMOeyOYy47SmitCmAMs6N+M w9+CI2DOi8eNpVfUNb3yMSGh4yfhlJlOr5jXEUUnWP3Iv0M9S8lmULnFMPejqncbKVGr Y6rBvZR/BVKl4IJFgDyjFKrcg9XLVAC8AoPmM= Original-Received: by 10.114.159.5 with SMTP id h5mr689756wae.222.1212617352673; Wed, 04 Jun 2008 15:09:12 -0700 (PDT) Original-Received: by 10.114.167.17 with HTTP; Wed, 4 Jun 2008 15:09:12 -0700 (PDT) In-Reply-To: Content-Disposition: inline X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 2) 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:98430 Archived-At: > In what way is it different from setting scroll-preserve-screen-position? It preserves the column, too, which is the whole point of pager.el. > I suggest we reuse temporary-goal-column instead. >> (defconst pager-keep-column-commands >> '(pager-row-down pager-row-up row-dn row-up >> pager-page-down pager-page-up pg-dn pg-up) >> "Commands which when called without any other intervening command should >> keep the `pager-temporary-goal-column'") > > What are those extra commands? pager-row-* are scrolling commands, not needed in Emacs (which has scroll-lock-mode). pg-dn, pg-up, etc. are aliases for pager 1.0 compatibility. > Since this doesn't doesn't use scroll-up or scroll-down, it's very much > unclear whether it's going to behave sufficiently well in all cases. > > I'm especially uncomfortable with the use of vertical-motion, which > doesn't actually use the redisplay's code, but some approximation of its > behavior, (so it doesn't pay attention to images and other things like > that, for example). The original pager.el, which I'm using, does not use `vertical-motion', but `forward-line', `scroll-down' and `scroll-up'. Please take a look at http://user.it.uu.se/~mic/pager.el > PS: Here's a patch to window.c which makes > scroll-preserve-screen-position preserve the column position as well as > the line position, tho it only applies to GUI frames, not to tty frames > (which use another piece of code which I haven't bothered to adjust > accordingly). That is a great change, please install it! Juanma