From unknown Sun Jun 15 08:52:05 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#36494 <36494@debbugs.gnu.org> To: bug#36494 <36494@debbugs.gnu.org> Subject: Status: 27.0.50; [Proposition] New option to scroll up regardless of eob Reply-To: bug#36494 <36494@debbugs.gnu.org> Date: Sun, 15 Jun 2025 15:52:05 +0000 retitle 36494 27.0.50; [Proposition] New option to scroll up regardless of = eob reassign 36494 emacs submitter 36494 marcowahlsoft@gmail.com severity 36494 wishlist thanks From debbugs-submit-bounces@debbugs.gnu.org Thu Jul 04 07:03:57 2019 Received: (at submit) by debbugs.gnu.org; 4 Jul 2019 11:03:57 +0000 Received: from localhost ([127.0.0.1]:50438 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hizWu-0004Sr-Lm for submit@debbugs.gnu.org; Thu, 04 Jul 2019 07:03:57 -0400 Received: from lists.gnu.org ([209.51.188.17]:47530) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hizWq-0004Sh-A8 for submit@debbugs.gnu.org; Thu, 04 Jul 2019 07:03:55 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:53636) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hizWm-00067O-VC for bug-gnu-emacs@gnu.org; Thu, 04 Jul 2019 07:03:52 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50,FREEMAIL_FROM, URIBL_BLOCKED autolearn=disabled version=3.3.2 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hizWj-0004Nv-Kr for bug-gnu-emacs@gnu.org; Thu, 04 Jul 2019 07:03:48 -0400 Received: from mail-wm1-x343.google.com ([2a00:1450:4864:20::343]:51115) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hizWj-0004NF-8G for bug-gnu-emacs@gnu.org; Thu, 04 Jul 2019 07:03:45 -0400 Received: by mail-wm1-x343.google.com with SMTP id n9so5333162wmi.0 for ; Thu, 04 Jul 2019 04:03:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:date:message-id:mime-version; bh=qe88T+wV2wwUFXNSmUBsuK/kF3iH8pLBNqxBlFm/B1s=; b=r8uu3nuXynlLufMdrD4bWr2bnsIG525ZKm+oxSsKkmnV8mriecL4gx1lDuAPbsT+7q cgeVV53miDS0+IEoQpXNkaA3tT+jk3E4nDdWqi2b2TSHtGM6Bdu0ZMcHqfS6OU90aVHS hlPg9MJVIDtYc3Nb20LQ16+Lv3xMofjFIBhaJy3kxcvOjD6+WtkTxS7C4vLOOyjG0rIe jaiCW3Nod3QMtK1+nzkbos9CswQ43hjeiUFESn5OVTihf5fE4lNjg3VKEmQvFmx28w+Y vIWyiTfb7SKDCGycIIK+/nd88zn5ixW8fVzKS7dAx8fviD2Y9DltM/KSkfqXiFJAGRM3 2UCQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:mime-version; bh=qe88T+wV2wwUFXNSmUBsuK/kF3iH8pLBNqxBlFm/B1s=; b=p0L/NnFH81mpj2X5J8jbJmhP4nQ3/E9mByIceDHAaOkTLW6RA3lxc1FuEcYS3gi7br 6XqGICSdr1T6WFFg8pNHppEH0aEcKbGdb4SNzFklPItpDiUmh2YBxWWfjruP37t6QIWW D7JmvYighd71q8mJeKMfJy1l5ttt/NMZZFcyq/3ZSYqL0Jr2NJR4uwWcvQ7utWdA44kM B5IjwZfZnf7o8IKlbtw+WEMlI98dm7/5d+X+lwaOIEzMIu8sNIsLLcDm/CZDf9Cy70A/ xOqX2E8svEj4JhsWJQK7KtMcmDeXgQ8oFYxdOOWBPEVB4qFTHHhYMmUURz7AZYJP1ZTS NIig== X-Gm-Message-State: APjAAAVq0O1skKEj3yr7yI7a5DghRekppqk2/C7bDN1GOjNGNRAAmKRy PggoTQMWquRe0f3s8Oks3YrmK1zVFPA= X-Google-Smtp-Source: APXvYqyOlF/rbFPRxWLr9Vbgtz8NhXB9d/gonoh7oF2VtBGUF+Lq99lKkInpkRKG/G8Sl6ioY9x0nA== X-Received: by 2002:a05:600c:21d4:: with SMTP id x20mr10969856wmj.61.1562238222802; Thu, 04 Jul 2019 04:03:42 -0700 (PDT) Received: from tm6592 (p200300ECDF02E4D14D0EA68D36A5A9A0.dip0.t-ipconnect.de. [2003:ec:df02:e4d1:4d0e:a68d:36a5:a9a0]) by smtp.gmail.com with ESMTPSA id h8sm5007362wmf.12.2019.07.04.04.03.41 (version=TLS1_3 cipher=AEAD-AES256-GCM-SHA384 bits=256/256); Thu, 04 Jul 2019 04:03:41 -0700 (PDT) From: marcowahlsoft@gmail.com To: bug-gnu-emacs@gnu.org Subject: 27.0.50; [Proposition] New option to scroll up regardless of eob Date: Thu, 04 Jul 2019 13:03:40 +0200 Message-ID: <84ftnmjc37.fsf@gmail.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:4864:20::343 X-Spam-Score: -1.3 (-) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) --=-=-= Content-Type: text/plain Most of the time I find it useful to scroll up in scroll-lock-mode also in the case when the end of the buffer is in sight. With this behavior it's possible to scroll up until there is literally (almost) nothing left in the buffer. This is in opposition to the current behavior of scroll-lock-mode which always switches to forward-line if the end of buffer is in sight. Find attached a concrete realization. Thanks for consideration and best regards! In GNU Emacs 27.0.50 (build 5, x86_64-pc-linux-gnu, GTK+ Version 3.24.9) of 2019-06-28 built on tm6592 Repository revision: d58fc4e8ece8ccafd5ef430a57c2a8b417c8e038 Repository branch: master Windowing system distributor 'The X.Org Foundation', version 11.0.12005000 System Description: Arch Linux Recent messages: Type "q" to restore previous buffer, to scroll help. Mark saved where search started [2 times] funcall-interactively: Buffer is read-only: # Mark saved where search started user-error: Not defining or executing kbd macro user-error: Only diff buffers can be saved as patches Directory has changed on disk; type g to update Dired Delete 0001-Document-bookmark-annotations-in-Emacs-Manual-bug-36.patch (y or n) y Deleting...done Pause over at 12:50:36. What about another tomato? Configured features: XPM JPEG TIFF GIF PNG RSVG SOUND GPM DBUS GSETTINGS GLIB NOTIFY INOTIFY ACL GNUTLS LIBXML2 FREETYPE HARFBUZZ M17N_FLT LIBOTF XFT ZLIB TOOLKIT_SCROLL_BARS GTK3 X11 XDBE XIM THREADS LIBSYSTEMD JSON PDUMPER LCMS2 GMP Important settings: value of $LANG: en_US.UTF-8 locale-coding-system: utf-8-unix Major mode: Dired by name Minor modes in effect: semantic-minor-modes-format: ((:eval (if (or semantic-highlight-edits-mode semantic-show-unmatched-syntax-mode) S))) gnus-dired-mode: t global-magit-file-mode: t magit-auto-revert-mode: t global-git-commit-mode: t async-bytecomp-package-mode: t pdf-occur-dired-minor-mode: t pdf-occur-global-minor-mode: t shell-dirtrack-mode: t winner-mode: t timeclock-mode-line-display: t show-paren-mode: t global-undo-tree-mode: t display-time-mode: t auto-insert-mode: t beginend-global-mode: t beginend-dired-mode: t global-company-mode: t company-mode: t wrap-region-global-mode: t ido-hacks-mode: t ido-everywhere: t straight-use-package-mode: t straight-package-neutering-mode: t dired-hide-details-mode: t tooltip-mode: t global-eldoc-mode: t electric-indent-mode: t mouse-wheel-mode: t global-prettify-symbols-mode: t file-name-shadow-mode: t jit-lock-debug-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t buffer-read-only: t line-number-mode: t transient-mark-mode: t abbrev-mode: t Load-path shadows: /home/b/.emacs.d/straight/build/debbugs/debbugs hides /home/b/.emacs.d/elpa/debbugs-0.18/debbugs /home/b/.emacs.d/straight/build/debbugs/debbugs-gnu hides /home/b/.emacs.d/elpa/debbugs-0.18/debbugs-gnu /home/b/.emacs.d/straight/build/debbugs/debbugs-org hides /home/b/.emacs.d/elpa/debbugs-0.18/debbugs-org /home/b/.emacs.d/straight/build/debbugs/debbugs-autoloads hides /home/b/.emacs.d/elpa/debbugs-0.18/debbugs-autoloads /home/b/.emacs.d/straight/build/debbugs/debbugs-browse hides /home/b/.emacs.d/elpa/debbugs-0.18/debbugs-browse /home/b/p/org/org-mode/lisp/org-inlinetask hides /home/b/p/emacs/emacs-a/clone/lisp/org/org-inlinetask /home/b/p/org/org-mode/lisp/ob-picolisp hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-picolisp /home/b/p/org/org-mode/lisp/ox-ascii hides /home/b/p/emacs/emacs-a/clone/lisp/org/ox-ascii /home/b/p/org/org-mode/lisp/ob-table hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-table /home/b/p/org/org-mode/lisp/ob-ruby hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-ruby /home/b/p/org/org-mode/lisp/ob-C hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-C /home/b/p/org/org-mode/lisp/ob-hledger hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-hledger /home/b/p/org/org-mode/lisp/ox-md hides /home/b/p/emacs/emacs-a/clone/lisp/org/ox-md /home/b/p/org/org-mode/lisp/org-mouse hides /home/b/p/emacs/emacs-a/clone/lisp/org/org-mouse /home/b/p/org/org-mode/lisp/ob-lilypond hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-lilypond /home/b/p/org/org-mode/lisp/ob-scheme hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-scheme /home/b/p/org/org-mode/lisp/ox-beamer hides /home/b/p/emacs/emacs-a/clone/lisp/org/ox-beamer /home/b/p/org/org-mode/lisp/ob-gnuplot hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-gnuplot /home/b/p/org/org-mode/lisp/ob-core hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-core /home/b/p/org/org-mode/lisp/ox-odt hides /home/b/p/emacs/emacs-a/clone/lisp/org/ox-odt /home/b/p/org/org-mode/lisp/ob-comint hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-comint /home/b/p/org/org-mode/lisp/ob-lua hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-lua /home/b/p/org/org-mode/lisp/org-mobile hides /home/b/p/emacs/emacs-a/clone/lisp/org/org-mobile /home/b/p/org/org-mode/lisp/ob-java hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-java /home/b/p/org/org-mode/lisp/ob-js hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-js /home/b/p/org/org-mode/lisp/ob-lob hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-lob /home/b/p/org/org-mode/lisp/ob-R hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-R /home/b/p/org/org-mode/lisp/org-lint hides /home/b/p/emacs/emacs-a/clone/lisp/org/org-lint /home/b/p/org/org-mode/lisp/org-datetree hides /home/b/p/emacs/emacs-a/clone/lisp/org/org-datetree /home/b/p/org/org-mode/lisp/ob-shen hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-shen /home/b/p/org/org-mode/lisp/ob-clojure hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-clojure /home/b/p/org/org-mode/lisp/org-capture hides /home/b/p/emacs/emacs-a/clone/lisp/org/org-capture /home/b/p/org/org-mode/lisp/ob-sqlite hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-sqlite /home/b/p/org/org-mode/lisp/org-entities hides /home/b/p/emacs/emacs-a/clone/lisp/org/org-entities /home/b/p/org/org-mode/lisp/ob-python hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-python /home/b/p/org/org-mode/lisp/org-id hides /home/b/p/emacs/emacs-a/clone/lisp/org/org-id /home/b/p/org/org-mode/lisp/ob-abc hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-abc /home/b/p/org/org-mode/lisp/org-habit hides /home/b/p/emacs/emacs-a/clone/lisp/org/org-habit /home/b/p/org/org-mode/lisp/org-protocol hides /home/b/p/emacs/emacs-a/clone/lisp/org/org-protocol /home/b/p/org/org-mode/lisp/ob-ebnf hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-ebnf /home/b/p/org/org-mode/lisp/ob-makefile hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-makefile /home/b/p/org/org-mode/lisp/ob-ditaa hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-ditaa /home/b/p/org/org-mode/lisp/ob-org hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-org /home/b/p/org/org-mode/lisp/ox hides /home/b/p/emacs/emacs-a/clone/lisp/org/ox /home/b/p/org/org-mode/lisp/ob-stan hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-stan /home/b/p/org/org-mode/lisp/org-element hides /home/b/p/emacs/emacs-a/clone/lisp/org/org-element /home/b/p/org/org-mode/lisp/org-colview hides /home/b/p/emacs/emacs-a/clone/lisp/org/org-colview /home/b/p/org/org-mode/lisp/ox-html hides /home/b/p/emacs/emacs-a/clone/lisp/org/ox-html /home/b/p/org/org-mode/lisp/ox-man hides /home/b/p/emacs/emacs-a/clone/lisp/org/ox-man /home/b/p/org/org-mode/lisp/org-install hides /home/b/p/emacs/emacs-a/clone/lisp/org/org-install /home/b/p/org/org-mode/lisp/ob-sed hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-sed /home/b/p/org/org-mode/lisp/ob-io hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-io /home/b/p/org/org-mode/lisp/ox-icalendar hides /home/b/p/emacs/emacs-a/clone/lisp/org/ox-icalendar /home/b/p/org/org-mode/lisp/ob-vala hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-vala /home/b/p/org/org-mode/lisp/org-compat hides /home/b/p/emacs/emacs-a/clone/lisp/org/org-compat /home/b/p/org/org-mode/lisp/ob-eval hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-eval /home/b/p/org/org-mode/lisp/ox-latex hides /home/b/p/emacs/emacs-a/clone/lisp/org/ox-latex /home/b/p/org/org-mode/lisp/org-footnote hides /home/b/p/emacs/emacs-a/clone/lisp/org/org-footnote /home/b/p/org/org-mode/lisp/ob-ledger hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-ledger /home/b/p/org/org-mode/lisp/org-timer hides /home/b/p/emacs/emacs-a/clone/lisp/org/org-timer /home/b/p/org/org-mode/lisp/ob-asymptote hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-asymptote /home/b/p/org/org-mode/lisp/org-list hides /home/b/p/emacs/emacs-a/clone/lisp/org/org-list /home/b/p/org/org-mode/lisp/ox-org hides /home/b/p/emacs/emacs-a/clone/lisp/org/ox-org /home/b/p/org/org-mode/lisp/org-duration hides /home/b/p/emacs/emacs-a/clone/lisp/org/org-duration /home/b/p/org/org-mode/lisp/ob-sql hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-sql /home/b/p/org/org-mode/lisp/org-table hides /home/b/p/emacs/emacs-a/clone/lisp/org/org-table /home/b/p/org/org-mode/lisp/ob-matlab hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-matlab /home/b/p/org/org-mode/lisp/org-crypt hides /home/b/p/emacs/emacs-a/clone/lisp/org/org-crypt /home/b/p/org/org-mode/lisp/ob-haskell hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-haskell /home/b/p/org/org-mode/lisp/org-macs hides /home/b/p/emacs/emacs-a/clone/lisp/org/org-macs /home/b/p/org/org-mode/lisp/org-attach hides /home/b/p/emacs/emacs-a/clone/lisp/org/org-attach /home/b/p/org/org-mode/lisp/ob-shell hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-shell /home/b/p/org/org-mode/lisp/ob-css hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-css /home/b/p/org/org-mode/lisp/ob-ocaml hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-ocaml /home/b/p/org/org-mode/lisp/ob-plantuml hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-plantuml /home/b/p/org/org-mode/lisp/ob-dot hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-dot /home/b/p/org/org-mode/lisp/org-faces hides /home/b/p/emacs/emacs-a/clone/lisp/org/org-faces /home/b/p/org/org-mode/lisp/ob-calc hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-calc /home/b/p/org/org-mode/lisp/ob-mscgen hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-mscgen /home/b/p/org/org-mode/lisp/ob-forth hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-forth /home/b/p/org/org-mode/lisp/ob-ref hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-ref /home/b/p/org/org-mode/lisp/ob-awk hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-awk /home/b/p/org/org-mode/lisp/org-agenda hides /home/b/p/emacs/emacs-a/clone/lisp/org/org-agenda /home/b/p/org/org-mode/lisp/org hides /home/b/p/emacs/emacs-a/clone/lisp/org/org /home/b/p/org/org-mode/lisp/org-macro hides /home/b/p/emacs/emacs-a/clone/lisp/org/org-macro /home/b/p/org/org-mode/lisp/ob-J hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-J /home/b/p/org/org-mode/lisp/ob-emacs-lisp hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-emacs-lisp /home/b/p/org/org-mode/lisp/ob-maxima hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-maxima /home/b/p/org/org-mode/lisp/ob-tangle hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-tangle /home/b/p/org/org-mode/lisp/ob hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob /home/b/p/org/org-mode/lisp/ox-publish hides /home/b/p/emacs/emacs-a/clone/lisp/org/ox-publish /home/b/p/org/org-mode/lisp/ox-texinfo hides /home/b/p/emacs/emacs-a/clone/lisp/org/ox-texinfo /home/b/p/org/org-mode/lisp/org-src hides /home/b/p/emacs/emacs-a/clone/lisp/org/org-src /home/b/p/org/org-mode/lisp/org-loaddefs hides /home/b/p/emacs/emacs-a/clone/lisp/org/org-loaddefs /home/b/p/org/org-mode/lisp/ob-processing hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-processing /home/b/p/org/org-mode/lisp/ob-sass hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-sass /home/b/p/org/org-mode/lisp/org-pcomplete hides /home/b/p/emacs/emacs-a/clone/lisp/org/org-pcomplete /home/b/p/org/org-mode/lisp/ob-exp hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-exp /home/b/p/org/org-mode/lisp/ob-coq hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-coq /home/b/p/org/org-mode/lisp/ob-groovy hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-groovy /home/b/p/org/org-mode/lisp/ob-lisp hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-lisp /home/b/p/org/org-mode/lisp/ob-perl hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-perl /home/b/p/org/org-mode/lisp/org-feed hides /home/b/p/emacs/emacs-a/clone/lisp/org/org-feed /home/b/p/org/org-mode/lisp/ob-octave hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-octave /home/b/p/org/org-mode/lisp/org-clock hides /home/b/p/emacs/emacs-a/clone/lisp/org/org-clock /home/b/p/org/org-mode/lisp/ob-screen hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-screen /home/b/p/org/org-mode/lisp/org-plot hides /home/b/p/emacs/emacs-a/clone/lisp/org/org-plot /home/b/p/org/org-mode/lisp/org-archive hides /home/b/p/emacs/emacs-a/clone/lisp/org/org-archive /home/b/p/org/org-mode/lisp/ob-fortran hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-fortran /home/b/p/org/org-mode/lisp/org-indent hides /home/b/p/emacs/emacs-a/clone/lisp/org/org-indent /home/b/p/org/org-mode/lisp/org-version hides /home/b/p/emacs/emacs-a/clone/lisp/org/org-version /home/b/p/org/org-mode/lisp/org-ctags hides /home/b/p/emacs/emacs-a/clone/lisp/org/org-ctags /home/b/p/org/org-mode/lisp/ob-latex hides /home/b/p/emacs/emacs-a/clone/lisp/org/ob-latex /home/b/.emacs.d/straight/build/soap-client/soap-client hides /home/b/p/emacs/emacs-a/clone/lisp/net/soap-client /home/b/.emacs.d/straight/build/soap-client/soap-inspect hides /home/b/p/emacs/emacs-a/clone/lisp/net/soap-inspect /home/b/.emacs.d/straight/build/cl-lib/cl-lib hides /home/b/p/emacs/emacs-a/clone/lisp/emacs-lisp/cl-lib /home/b/.emacs.d/straight/build/let-alist/let-alist hides /home/b/p/emacs/emacs-a/clone/lisp/emacs-lisp/let-alist /home/b/.emacs.d/straight/build/faceup/faceup hides /home/b/p/emacs/emacs-a/clone/lisp/emacs-lisp/faceup /home/b/.emacs.d/straight/build/seq/seq hides /home/b/p/emacs/emacs-a/clone/lisp/emacs-lisp/seq Features: (shadow bbdb-message mailalias emacsbug whitespace magit-patch macros iedit iedit-lib flycheck gnus-fun wdired compare-w tramp-cmds rfc2104 tramp-cache dired-aux pdf-sync pdf-annot pdf-outline pdf-links pdf-history em-unix em-term term ehelp em-script em-prompt em-ls em-hist em-pred em-glob em-dirs esh-var em-cmpl em-basic em-banner em-alias esh-mode shr-color color url-cache expand-region text-mode-expansions cc-mode-expansions the-org-mode-expansions python-el-fgallina-expansions js-mode-expansions er-basic-expansions expand-region-core expand-region-custom js iso-transl misearch multi-isearch gnus-dired go-up ledger-mode ledger-check ledger-texi ledger-test ledger-sort ledger-report ledger-reconcile ledger-occur ledger-fonts ledger-fontify ledger-state ledger-complete ledger-schedule ledger-init ledger-xact ledger-post ledger-exec ledger-navigate eshell esh-cmd esh-ext esh-opt esh-proc esh-io esh-module esh-groups ledger-context ledger-commodities esh-arg esh-util ledger-regex python tramp-sh tramp tramp-loaddefs trampver tramp-integration files-x tramp-compat ls-lisp bug-reference magit-extras magit-bookmark magit-submodule magit-obsolete magit-blame magit-stash magit-reflog magit-bisect magit-push magit-pull magit-fetch magit-clone magit-remote magit-commit magit-sequence magit-notes magit-worktree magit-tag magit-merge magit-branch magit-reset magit-files magit-refs magit-status magit magit-repos magit-apply magit-wip magit-log which-func magit-diff smerge-mode magit-core magit-autorevert autorevert filenotify magit-margin magit-transient magit-process magit-mode transient git-commit magit-git magit-section magit-utils log-edit pcvs-util eieio-opt speedbar sb-image ezimage dframe herald-the-mode-line cal-move flyspell ispell sh-script smie executable org-attach-screenshot tabify org-capture password-store with-editor async-bytecomp async f s smiley gnus-cite qp mm-archive mail-extr gnus-async gnus-bcklg gnus-kill gnus-ml disp-table cursor-sensor nndir nnml nndraft nnmh nndoc utf-7 epa-file gnutls network-stream nnfolder bbdb-gnus nnnil gnus-agent gnus-srvr gnus-score score-mode nnvirtual gnus-msg gnus-art mm-uu mml2015 mm-view mml-smime smime dig gnus-cache gnus-demon nntp smtpmail sendmail hl-line org-duration rase view cal-china lunar cal-islam cal-hebrew holidays hol-loaddefs bbdb-anniv cal-iso appt diary-lib diary-loaddefs server pinentry pdf-occur ibuf-ext ibuffer ibuffer-loaddefs tablist tablist-filter semantic/wisent/comp semantic/wisent semantic/wisent/wisent semantic/util-modes semantic/util semantic semantic/tag semantic/lex semantic/fw mode-local cedet pdf-isearch let-alist pdf-misc imenu pdf-tools compile cus-edit pdf-view bookmark pdf-cache pdf-info pdf-util paredit elec-pair scroll-lock solar cal-dst org-element avl-tree org-velocity dabbrev org-learn org-invoice org-depend org-w3m org-tempo tempo org-rmail org-mhe org-irc org-inlinetask org-info org-habit org-agenda org-gnus nnir gnus-sum gnus-group gnus-undo gnus-start gnus-cloud nnimap nnmail mail-source utf7 netrc nnoo parse-time gnus-spec gnus-int gnus-range message rfc822 mml mml-sec epa epg gmm-utils mailheader gnus-win org-eww org-docview doc-view jka-compr image-mode org-crypt org-bibtex bibtex org-bbdb ob-lua ob-sed ob-octave ob-makefile ob-forth ob-R ob-haskell ob-maxima ob-java ob-plantuml ob-sqlite ob-sql ob-screen ob-J ob-io ob-shell shell ob-clojure ob-scheme geiser-impl help-fns radix-tree geiser-custom geiser-base geiser ob-gnuplot ob-dot ob-ditaa ob-lisp ob-css ob-js ob-org ob-ledger ob-latex ob-calc calc-store calc-trail calc-ext calc calc-loaddefs calc-macs ob-C cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs ob-python ob-awk winner timeclock paren selectric-mode avoid image-file icomplete hack-time-mode undo-tree diff time desktop frameset autoinsert cus-start cus-load .emacs-custom hydra lv mw-private org-insert-context-dependent postbank-to-ledger org-attach-embedded-images org-attach vc-git diff-mode org-id ariadne-marks deadgrep-autoloads fit-text-scale face-remap org-timer org-clock foldout ffap pdf-tools-autoloads tablist-autoloads auxies-eww little-helpers mw-mark auxies-rest rect dictionary link connection seclusion-mode seclusion-mode-autoloads emr-autoloads iedit-autoloads clang-format-autoloads projectile-autoloads list-utils-autoloads popup-autoloads emacsshot emms-librefm-stream emms-librefm-scrobbler emms-playlist-limit emms-volume emms-volume-amixer emms-i18n emms-history emms-score emms-stream-info emms-metaplaylist-mode emms-bookmarks emms-cue emms-mode-line-icon emms-browser sort emms-playlist-sort emms-last-played emms-player-xine emms-player-mpd tq emms-playing-time emms-lyrics emms-url emms-streams emms-show-all emms-tag-editor emms-mark emms-mode-line emms-cache emms-info-opusinfo emms-info-ogginfo emms-info-mp3info emms-info later-do emms-playlist-mode emms-player-vlc emms-player-mpv emms-player-mplayer emms-player-simple emms-source-playlist emms-source-file emms-setup emms emms-compat page-ext eww mm-url gnus nnheader gnus-util rmail rmail-loaddefs mail-utils wid-edit thingatpt url-queue date-at-point skeleton major-mode-stack reverse-words carry-region rase-autoloads flycheck-package-autoloads package-lint-autoloads flycheck-autoloads let-alist-autoloads md4rd-autoloads tree-mode-autoloads request-autoloads hierarchy-autoloads debbugs-autoloads soap-client-autoloads lyrics-autoloads supercite regi rx ed org-section-numbers keystrokes gopher derived shr text-property-search svg dom bbdb-mua bbdb-com crm mailabbrev bbdb bbdb-site timezone bbdb-loaddefs beginend org-bullets cider-autoloads sesman-autoloads seq-autoloads spinner-autoloads queue-autoloads pkg-info-autoloads epl-autoloads parseedn-autoloads parseclj-autoloads a-autoloads clojure-mode-autoloads finder-inf hack-time-mode-autoloads evil-autoloads goto-chg-autoloads undo-tree-autoloads deft-autoloads magit-autoloads transient-autoloads git-commit-autoloads company-oddmuse company-keywords company-etags etags fileloop generator xref project company-gtags company-dabbrev-code company-dabbrev company-files company-capf company-cmake company-xcode company-clang company-semantic company-eclim company-template company-bbdb company pcase company-autoloads ztree-autoloads form-feed-autoloads wrap-region dash wrap-region-autoloads underline-with-char-autoloads ert pp ewoc debug backtrace paredit-autoloads go-up-autoloads rope-read-mode-autoloads herald-the-mode-line-autoloads pass-autoloads password-store-otp-autoloads password-store-autoloads with-editor-autoloads async-autoloads f-autoloads s-autoloads racket-mode-autoloads faceup-autoloads mastodon-autoloads lua-mode-autoloads gited-autoloads quarter-plane-autoloads auto-correct-autoloads dired-narrow-autoloads dired-hacks-utils-autoloads filladapt-autoloads ido-hacks ido ido-hacks-autoloads geiser-autoloads hydra-autoloads lv-autoloads key-chord key-chord-autoloads pinentry-autoloads expand-region-autoloads ledger-mode-autoloads dictionary-autoloads link-autoloads connection-autoloads avy avy-autoloads haskell-mode-autoloads evil-numbers-autoloads impatient-mode-autoloads htmlize-autoloads simple-httpd-autoloads aurel-autoloads bui-autoloads dash-autoloads org-attach-screenshot-autoloads markdown-mode-autoloads selectric-mode-autoloads org-pretty-tags elpher-autoloads chronos notifications dbus chronos-autoloads sly-autoloads dired-du-autoloads cl-lib-autoloads folding-isearch folding cl straight-autoloads cl-extra help-mode straight hyperbole hinit hibtypes hib-doc-id hsys-www klink hib-kbd hib-social hib-debbugs debbugs-gnu add-log debbugs soap-client mm-decode mm-bodies mm-encode url-http url-auth mail-parse rfc2231 rfc2047 rfc2045 mm-util ietf-drums mail-prsvr url-gw nsm rmc puny url url-proxy url-privacy url-expand url-methods url-history url-cookie url-domsuf url-util mailcap warnings rng-xsd rng-dt rng-util xsd-regexp xml hsys-org hactypes hui-mini hui hui-mouse hmouse-key hargs hui-menu hyrolo-menu hyrolo hmail hui-jmenu hmouse-sh hmouse-drv hypb locate dired dired-loaddefs hui-window pulse hycontrol hsettings hui-em-but hbut hact hpath hhist hbdata htz cal-julian hbmap hmoccur browse-url hui-select hvar set hversion hload-path org-protocol ob-keys edmacro kmacro org ob ob-tangle ob-ref ob-lob ob-table ob-exp org-macro org-footnote org-src ob-comint org-pcomplete pcomplete comint ansi-color ring org-list org-faces org-entities time-date noutline outline easy-mmode org-version ob-emacs-lisp ob-core ob-eval org-table ol org-keys org-compat advice org-macs org-loaddefs format-spec find-func cal-menu calendar cal-loaddefs mule-util info kotl-autoloads package easymenu epg-config url-handlers url-parse auth-source cl-seq eieio eieio-core cl-macs eieio-loaddefs password-cache json subr-x map url-vars seq byte-opt gv bytecomp byte-compile cconv cl-loaddefs cl-lib tooltip eldoc electric uniquify ediff-hook vc-hooks lisp-float-type mwheel term/x-win x-win term/common-win x-dnd tool-bar dnd fontset image regexp-opt fringe tabulated-list replace newcomment text-mode elisp-mode lisp-mode prog-mode register page menu-bar rfn-eshadow isearch timer select scroll-bar mouse jit-lock font-lock syntax facemenu font-core term/tty-colors frame cl-generic cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese composite charscript charprop case-table epa-hook jka-cmpr-hook help simple abbrev obarray minibuffer cl-preloaded nadvice loaddefs button faces cus-face macroexp files text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote threads dbusbind inotify lcms2 dynamic-setting system-font-setting font-render-setting move-toolbar gtk x-toolkit x multi-tty make-network-process emacs) Memory information: ((conses 16 1278117 187138) (symbols 48 62299 1) (strings 32 355262 31866) (string-bytes 1 13502087) (vectors 16 176600) (vector-slots 8 2735975 260200) (floats 8 2139 1926) (intervals 56 45668 415) (buffers 992 181)) -- Marco Wahl --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0001-Option-to-allow-scroll-up-at-eob.patch >From fd1d67b159439717e46b6697f8443f5504412896 Mon Sep 17 00:00:00 2001 From: Marco Wahl Date: Thu, 4 Jul 2019 12:42:18 +0200 Subject: [PATCH] Option to allow scroll up at eob * lisp/scroll-lock.el (scroll-lock-switch-to-forward-line-at-eob): New customizable variable. * lisp/scroll-lock.el (scroll-lock-next-line): Respect setting of `scroll-lock-switch-to-forward-line-at-eob'. --- lisp/scroll-lock.el | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/lisp/scroll-lock.el b/lisp/scroll-lock.el index 8281edb172..506bf53727 100644 --- a/lisp/scroll-lock.el +++ b/lisp/scroll-lock.el @@ -30,6 +30,10 @@ ;;; Code: +(defcustom scroll-lock-switch-to-forward-line-at-eob + t + "If set then don't scroll if the end of buffer is visible.") + (defvar scroll-lock-mode-map (let ((map (make-sparse-keymap))) (define-key map [remap next-line] 'scroll-lock-next-line) @@ -86,7 +90,8 @@ scroll-lock-next-line (interactive "p") (or arg (setq arg 1)) (scroll-lock-update-goal-column) - (if (pos-visible-in-window-p (point-max)) + (if (and scroll-lock-switch-to-forward-line-at-eob + (pos-visible-in-window-p (point-max))) (forward-line arg) (scroll-up arg)) (scroll-lock-move-to-column scroll-lock-temporary-goal-column)) -- 2.22.0 --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Thu Jul 04 09:09:25 2019 Received: (at 36494) by debbugs.gnu.org; 4 Jul 2019 13:09:25 +0000 Received: from localhost ([127.0.0.1]:50558 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hj1UL-0001Ck-9r for submit@debbugs.gnu.org; Thu, 04 Jul 2019 09:09:25 -0400 Received: from eggs.gnu.org ([209.51.188.92]:33586) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hj1UI-0001CW-Sg for 36494@debbugs.gnu.org; Thu, 04 Jul 2019 09:09:24 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:57467) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hj1UC-0007wQ-IC; Thu, 04 Jul 2019 09:09:17 -0400 Received: from [176.228.60.248] (port=2094 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1hj1UB-0004E5-Uj; Thu, 04 Jul 2019 09:09:16 -0400 Date: Thu, 04 Jul 2019 16:09:06 +0300 Message-Id: <83d0iqaqvh.fsf@gnu.org> From: Eli Zaretskii To: marcowahlsoft@gmail.com In-reply-to: <84ftnmjc37.fsf@gmail.com> (marcowahlsoft@gmail.com) Subject: Re: bug#36494: 27.0.50; [Proposition] New option to scroll up regardless of eob References: <84ftnmjc37.fsf@gmail.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 36494 Cc: 36494@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: marcowahlsoft@gmail.com > Date: Thu, 04 Jul 2019 13:03:40 +0200 > > Most of the time I find it useful to scroll up in scroll-lock-mode also > in the case when the end of the buffer is in sight. With this behavior > it's possible to scroll up until there is literally (almost) nothing > left in the buffer. > > This is in opposition to the current behavior of scroll-lock-mode which > always switches to forward-line if the end of buffer is in sight. > > Find attached a concrete realization. How about if we bind S-DOWN and S-UP to commands that scroll to EOB without introducing any new option? That would mimic pages like Less which stop at EOB with an unshifted key, but continue scrolling with a shifted key. From debbugs-submit-bounces@debbugs.gnu.org Thu Jul 04 09:33:50 2019 Received: (at 36494) by debbugs.gnu.org; 4 Jul 2019 13:33:50 +0000 Received: from localhost ([127.0.0.1]:50573 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hj1rx-0001mA-LQ for submit@debbugs.gnu.org; Thu, 04 Jul 2019 09:33:49 -0400 Received: from mail-wr1-f53.google.com ([209.85.221.53]:38912) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hj1rv-0001lw-3l for 36494@debbugs.gnu.org; Thu, 04 Jul 2019 09:33:47 -0400 Received: by mail-wr1-f53.google.com with SMTP id x4so6655831wrt.6 for <36494@debbugs.gnu.org>; Thu, 04 Jul 2019 06:33:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:organization:references:date:in-reply-to :message-id:user-agent:mime-version; bh=e/REjC/umZYoo1RPiGkzOgXwR7LtyWAAGJR2h7YxcYo=; b=sHNmCkXe/F60SSc8mWZJ/7dw+2CutPEd49Dc2EQbN/s34QbVyNhq4sy6QDCouid2CS fSD6E3Ksc9Ho7m1EQf3YxFdIgF7oc6BTsJKLZVfzCRR1pac34lhBUTYARj3aM83H89II FQMfcjYx59x39mKxeOrM/57+5m7hOdYiEgOXIZ6nYfR4xdGrrXzXL3k49OKla6BO31fc uxRvvYIXimYe1kfEqX+dM3lPUuX01kHgTife349n1UVL0D/JBNry+kuV7hA3dC+lMEZ+ wAfdPa3cFYhViMN+IAY9A1tjCOuBRvSGEMtRajmsps7iD9aqSt4Kg85drlew3B1fCD7v Ayhg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:organization:references:date :in-reply-to:message-id:user-agent:mime-version; bh=e/REjC/umZYoo1RPiGkzOgXwR7LtyWAAGJR2h7YxcYo=; b=JbJEUha4kZGtuUGoQkSdrlO0WzhZ5Nh7mbf0SIFsAboQ/7k6UxvBuFL8radzoD/JWI 7dyLb+XLBxPM/XYDW+nx1KeY7OoDZEFWebKR3Otv2kD4MSbsJe6oZYUTpnnN8zbM25f8 YsuE5E0zjDSddA/4RUe9TbGO9y+1pQKzoKIjI0eokH6JZvF8UgUzdeTM4iGKySUQHYu/ SFrRQJQBVOMwEnO4gWu8FApi6v6/lT1iaVlBpy7ToTFPVLp92Fk6Cg57jvI7a4DLpmqI h6HNk8+G+u8A9KuHaOphuAecUqQgDVtsQ+Spn7j0SR+AHUtcydujRgpeoFID572xH2B/ 3b6Q== X-Gm-Message-State: APjAAAX5RutJVqqbqJoUgt8efG81f6wKgmVKtna+htSCf+1QywsfovVj A3IKnMAs1as+WmGb4kwYbJM= X-Google-Smtp-Source: APXvYqwcKdSOKwbE0TLVhNrwmZ5zyV1m/Br/DvHqpcOPkmU0lUh49DMqzJZxzz3BzWpNCsmh23tLIA== X-Received: by 2002:a5d:53c2:: with SMTP id a2mr13793501wrw.8.1562247221216; Thu, 04 Jul 2019 06:33:41 -0700 (PDT) Received: from tm6592 (p200300ECDF02E4D14D0EA68D36A5A9A0.dip0.t-ipconnect.de. [2003:ec:df02:e4d1:4d0e:a68d:36a5:a9a0]) by smtp.gmail.com with ESMTPSA id c9sm2617664wml.41.2019.07.04.06.33.39 (version=TLS1_3 cipher=AEAD-AES256-GCM-SHA384 bits=256/256); Thu, 04 Jul 2019 06:33:40 -0700 (PDT) From: Marco Wahl To: Eli Zaretskii Subject: Re: bug#36494: 27.0.50; [Proposition] New option to scroll up regardless of eob Organization: Marco Wahl References: <84ftnmjc37.fsf@gmail.com> <83d0iqaqvh.fsf@gnu.org> Date: Thu, 04 Jul 2019 15:33:38 +0200 In-Reply-To: <83d0iqaqvh.fsf@gnu.org> (Eli Zaretskii's message of "Thu, 04 Jul 2019 16:09:06 +0300") Message-ID: <847e8xkjpp.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 36494 Cc: marcowahlsoft@gmail.com, 36494@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Eli Zaretskii writes: >> From: marcowahlsoft@gmail.com >> Date: Thu, 04 Jul 2019 13:03:40 +0200 >> >> Most of the time I find it useful to scroll up in scroll-lock-mode also >> in the case when the end of the buffer is in sight. With this behavior >> it's possible to scroll up until there is literally (almost) nothing >> left in the buffer. >> >> This is in opposition to the current behavior of scroll-lock-mode which >> always switches to forward-line if the end of buffer is in sight. >> >> Find attached a concrete realization. > > How about if we bind S-DOWN and S-UP to commands that scroll to EOB > without introducing any new option? That would mimic pages like Less > which stop at EOB with an unshifted key, but continue scrolling with a > shifted key. That sounds good to me. Also the mimicing of similar features elsewhere. From debbugs-submit-bounces@debbugs.gnu.org Thu Jul 04 10:45:02 2019 Received: (at control) by debbugs.gnu.org; 4 Jul 2019 14:45:02 +0000 Received: from localhost ([127.0.0.1]:51690 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hj2ys-000824-9m for submit@debbugs.gnu.org; Thu, 04 Jul 2019 10:45:02 -0400 Received: from mail-io1-f48.google.com ([209.85.166.48]:45950) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hj2yq-00081X-NR for control@debbugs.gnu.org; Thu, 04 Jul 2019 10:45:01 -0400 Received: by mail-io1-f48.google.com with SMTP id g20so3704273ioc.12 for ; Thu, 04 Jul 2019 07:45:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:date:message-id:mime-version; bh=vzjZI9tp+L4Ho1OXUafGIBWTOhdnqxkO8FBAUZE2DY4=; b=gJJv8aNIwkcVslAswfI4Ejsh29SCEaeUdP6QWgc+8dove3/06SrWq8vNCKx6zKH1t/ 3edIrOI5+Jn7UcSkVqSh4a30XDLQsGLVQJ35UXr0ACRcwJlAr0wCXArkIe9j+YOSxAxd HbVsmG9lAIShFBj/mIFYdva43wvKbefp7ssZKnbqkxwr4oB5GO0ZS7lucZEriKwjdl18 4kxmmBs5Mo6uoASswsfCJs9d7EptPAek9E5UWHyHZ6Q/mbXOnVzVQqt7fSIMwa37fyMh ysYG3FX+GsSVd42z13b7Gn9WitMf1+/HEL2IfGVQ+wwdXYL09iL1PFifge7SjfL0wJqq 1uDA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:mime-version; bh=vzjZI9tp+L4Ho1OXUafGIBWTOhdnqxkO8FBAUZE2DY4=; b=gpH/laJEwbGT7mB/IAFZVGnBt+frrrt0qnZ4IoVpxb6sCuzsRtUHwQXDotYPdyyebR rZeB8WdR5mSsgXOutkiBBL0y8Eethts8q0AeggWQ2C24jcKaVM8DAghUR9RbRuVUHe30 i6K6bbjaFSraLdlsS9gaNPOMjnZZW1VixqzgA99Wxjs7JnMvessNOnGJbn69hU9TwbYE YUbdVCBJNNsSGC1JbpTqKfwl+X01ti6RB6ulXzgHq9vLPrS/UIrxnphQXz+Ch5qPRR6M fXCT+54mDwDYrPQuV2M/mZ0IATMqETx7ByotdeVXhTCsK3gtaqF4XAb/TeF3fSV7eFbp /KkA== X-Gm-Message-State: APjAAAWCvPn5Ze5AnjY5MoM4sjGQOGbp5ria4RJ3F4UL0cHghlxwadBR 48yqEKS2MGsKR3e0mHXM0X4VR2YP X-Google-Smtp-Source: APXvYqxFhwObIzhh6nJHPIeYE4wLdVBS+GTlf5I28GGYd+xb0ccQ9mPNko5k4unmvqfTTyKyOjixzw== X-Received: by 2002:a02:878a:: with SMTP id t10mr49523878jai.112.1562251494728; Thu, 04 Jul 2019 07:44:54 -0700 (PDT) Received: from vhost2 (CPE001143542e1f-CMf81d0f809fa0.cpe.net.cable.rogers.com. [99.230.51.196]) by smtp.gmail.com with ESMTPSA id e84sm6111501iof.39.2019.07.04.07.44.53 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Thu, 04 Jul 2019 07:44:53 -0700 (PDT) From: Noam Postavsky To: control@debbugs.gnu.org Subject: control message for bug #36494 Date: Thu, 04 Jul 2019 10:44:54 -0400 Message-ID: <85r275eu55.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.1 (/) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.1 (-) severity 36494 wishlist quit From debbugs-submit-bounces@debbugs.gnu.org Thu Jul 04 11:51:05 2019 Received: (at 36494) by debbugs.gnu.org; 4 Jul 2019 15:51:05 +0000 Received: from localhost ([127.0.0.1]:51750 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hj40n-0003LG-9D for submit@debbugs.gnu.org; Thu, 04 Jul 2019 11:51:05 -0400 Received: from userp2130.oracle.com ([156.151.31.86]:51564) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hj40k-0003Kl-TD for 36494@debbugs.gnu.org; Thu, 04 Jul 2019 11:51:03 -0400 Received: from pps.filterd (userp2130.oracle.com [127.0.0.1]) by userp2130.oracle.com (8.16.0.27/8.16.0.27) with SMTP id x64FmODp087370; Thu, 4 Jul 2019 15:50:56 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=mime-version : message-id : date : from : sender : to : cc : subject : references : in-reply-to : content-type : content-transfer-encoding; s=corp-2018-07-02; bh=t1OZZ5llt/GVAexem4TcPKAfgPUHuAxOyv/mNKugZP4=; b=J5JC3F1qSHDruRlLiJevPDydBqMY2N0Oer2bGy4HT0T4NfgK6vH5JsfnSqHr4A8K/37j 4uEZgFPEnGpj3Ev6EO/8R3FBtm4IsGK58PKb7kiY7kFW9uOvt3yzfIoTzti1g27L4Zni p3AkdhTcYCxCODLQdqjAMMGbJLXFkkEf/GVFO1zUmU+hhF73cZrzkij8rD0BIFNLCQnd a+OffGLbJiglDmyY6zq3TlMNTYJcG0Je4lP0j7FUrgrxcTC4KPEIfzHKnXYIdsGYId51 yNvu+P8eQ+BeFyVYGzbpruiSyLC0rgDEbipAzxLil+4OVhjM51DGbSGpWU3UjwCRS+Ez cw== Received: from userp3020.oracle.com (userp3020.oracle.com [156.151.31.79]) by userp2130.oracle.com with ESMTP id 2te61eff0s-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 04 Jul 2019 15:50:56 +0000 Received: from pps.filterd (userp3020.oracle.com [127.0.0.1]) by userp3020.oracle.com (8.16.0.27/8.16.0.27) with SMTP id x64FlrYj080805; Thu, 4 Jul 2019 15:50:56 GMT Received: from userv0122.oracle.com (userv0122.oracle.com [156.151.31.75]) by userp3020.oracle.com with ESMTP id 2tebbm08u3-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 04 Jul 2019 15:50:56 +0000 Received: from abhmp0017.oracle.com (abhmp0017.oracle.com [141.146.116.23]) by userv0122.oracle.com (8.14.4/8.14.4) with ESMTP id x64Fothj008501; Thu, 4 Jul 2019 15:50:55 GMT MIME-Version: 1.0 Message-ID: <80277bb2-d964-4930-ae91-0f0e96ed3124@default> Date: Thu, 4 Jul 2019 08:50:54 -0700 (PDT) From: Drew Adams To: Eli Zaretskii , marcowahlsoft@gmail.com Subject: RE: bug#36494: 27.0.50; [Proposition] New option to scroll up regardless of eob References: <<84ftnmjc37.fsf@gmail.com>> <<83d0iqaqvh.fsf@gnu.org>> In-Reply-To: <<83d0iqaqvh.fsf@gnu.org>> X-Priority: 3 X-Mailer: Oracle Beehive Extensions for Outlook 2.0.1.9.1 (1003210) [OL 16.0.4861.0 (x86)] Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable X-Proofpoint-Virus-Version: vendor=nai engine=6000 definitions=9307 signatures=668688 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 malwarescore=0 phishscore=0 bulkscore=0 spamscore=0 mlxscore=0 mlxlogscore=921 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1810050000 definitions=main-1907040200 X-Proofpoint-Virus-Version: vendor=nai engine=6000 definitions=9307 signatures=668688 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 priorityscore=1501 malwarescore=0 suspectscore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1011 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=990 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1810050000 definitions=main-1907040201 X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 36494 Cc: 36494@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > How about if we bind S-DOWN and S-UP to commands that scroll to EOB > without introducing any new option? That would mimic pages like Less > which stop at EOB with an unshifted key, but continue scrolling with a > shifted key. Yes. Some of us have been doing that individually (and not using `scroll-lock-mode'). E.g.: (global-set-key [S-down] (lambda () (interactive) (scroll-up 1))) (global-set-key [S-up] (lambda () (interactive) (scroll-down 1))) (But named functions are better than anonymous ones, for key binding. And yes, it would be good to let a numeric prefix arg scroll that many lines.) From debbugs-submit-bounces@debbugs.gnu.org Thu Jul 04 12:29:08 2019 Received: (at 36494) by debbugs.gnu.org; 4 Jul 2019 16:29:08 +0000 Received: from localhost ([127.0.0.1]:51814 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hj4bc-0006Vt-8m for submit@debbugs.gnu.org; Thu, 04 Jul 2019 12:29:08 -0400 Received: from eggs.gnu.org ([209.51.188.92]:34851) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hj4bb-0006Vc-7p for 36494@debbugs.gnu.org; Thu, 04 Jul 2019 12:29:07 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:60516) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hj4bW-0008UM-25; Thu, 04 Jul 2019 12:29:02 -0400 Received: from [176.228.60.248] (port=2522 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1hj4bU-0008Rn-P7; Thu, 04 Jul 2019 12:29:01 -0400 Date: Thu, 04 Jul 2019 19:28:51 +0300 Message-Id: <837e8xbw70.fsf@gnu.org> From: Eli Zaretskii To: Marco Wahl In-reply-to: <847e8xkjpp.fsf@gmail.com> (message from Marco Wahl on Thu, 04 Jul 2019 15:33:38 +0200) Subject: Re: bug#36494: 27.0.50; [Proposition] New option to scroll up regardless of eob References: <84ftnmjc37.fsf@gmail.com> <83d0iqaqvh.fsf@gnu.org> <847e8xkjpp.fsf@gmail.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 36494 Cc: 36494@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Marco Wahl > Cc: marcowahlsoft@gmail.com, 36494@debbugs.gnu.org > Date: Thu, 04 Jul 2019 15:33:38 +0200 > > > How about if we bind S-DOWN and S-UP to commands that scroll to EOB > > without introducing any new option? That would mimic pages like Less > > which stop at EOB with an unshifted key, but continue scrolling with a > > shifted key. > > That sounds good to me. Also the mimicing of similar features elsewhere. Would you like to submit a patch along those lines? From debbugs-submit-bounces@debbugs.gnu.org Thu Jul 04 14:59:53 2019 Received: (at 36494) by debbugs.gnu.org; 4 Jul 2019 18:59:54 +0000 Received: from localhost ([127.0.0.1]:51886 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hj6xV-0003wK-Mu for submit@debbugs.gnu.org; Thu, 04 Jul 2019 14:59:53 -0400 Received: from mail-io1-f54.google.com ([209.85.166.54]:38173) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hj6xU-0003w8-9U for 36494@debbugs.gnu.org; Thu, 04 Jul 2019 14:59:52 -0400 Received: by mail-io1-f54.google.com with SMTP id j6so14568682ioa.5 for <36494@debbugs.gnu.org>; Thu, 04 Jul 2019 11:59:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=B96j6pt+PMHfH1Nz6TKG3pxSRvZYXfHUX0GYVdfm3NI=; b=FzTrUgmiSV6iweWIjbIVySmzUkulZVcdgyCOhklt6LRQJrV5mRgbTNePaQFfuldQut S+oHhVtfIgi5eIjkSsKFNvOuk6VzC9CXBl30bjod2RUAQOzadSGEdjteyVYRWeyLaBq6 CBXEpJD6gNxTAp4e17mnamOtfVN1NKiMsxG1mFiyj8/JcS51cu9V8l46JGVkmWBYZOwH 6utdcKxolR6awKF9U4xTgwtTwtBrimbXkWdxac3ku/iVjce+4wqoeAYlH/9XPRTGuM1r c3AB4wWzH3Z5QowOwoMbM9qUUPxQ34iliF6T8px4921js6YFvq3OKxBGbEugaAM4+gbF qh+w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=B96j6pt+PMHfH1Nz6TKG3pxSRvZYXfHUX0GYVdfm3NI=; b=a5OuaAXJVsDuuKTot4MhCZkuEsNvN8is/20h15nrIVd7n62AseggE3HRzJTAWJLdcM OtYuxvzvHNxErTlVQcMW3BUSk/wW80S5sQoKCUkCpdzuhbG7LADnocY8YxoSlVbXp/Ki TMgoiSQKhrsO5zCnkR8eZL9oZzkSU9OF3zREs0HsyI5tYbSDJPNgl6suPzCSSy7lSjvx 7zV6xXdEIMp9glJF8QctLtc3aZisH15wVd0yDN9YQfYuWw0tuGQQX8Th3TjSal3ZxLD/ Kpi5fU0VfWfr43LEjahpFTZSoikbOx1Bvn4be64aQjUMys0GQp2qPYRpPhnusCsVFxmK VfVg== X-Gm-Message-State: APjAAAUEvbEJbPFA7/PTg8I8gMXfp35gDKvM1h95sF0K5GlESohXpAgO Hkhk35v3eUXgB4oBqoFBvW1Fz2s2 X-Google-Smtp-Source: APXvYqyQ9K8B+ZdMDe6NPZhNZ/QBjulSZQ8F9HpBnQZ9+XdFV0O0DzdSU6zzDLTM4afiLGHAzYGsEA== X-Received: by 2002:a5d:89c7:: with SMTP id a7mr5911531iot.194.1562266786462; Thu, 04 Jul 2019 11:59:46 -0700 (PDT) Received: from vhost2 (CPE001143542e1f-CMf81d0f809fa0.cpe.net.cable.rogers.com. [99.230.51.196]) by smtp.gmail.com with ESMTPSA id k5sm7875423ioj.47.2019.07.04.11.59.45 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Thu, 04 Jul 2019 11:59:46 -0700 (PDT) From: Noam Postavsky To: Drew Adams Subject: Re: bug#36494: 27.0.50; [Proposition] New option to scroll up regardless of eob References: <84ftnmjc37.fsf@gmail.com>> <83d0iqaqvh.fsf@gnu.org>> <80277bb2-d964-4930-ae91-0f0e96ed3124@default> Date: Thu, 04 Jul 2019 14:59:46 -0400 In-Reply-To: <80277bb2-d964-4930-ae91-0f0e96ed3124@default> (Drew Adams's message of "Thu, 4 Jul 2019 08:50:54 -0700 (PDT)") Message-ID: <85o929eicd.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1.92 (windows-nt) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 36494 Cc: Eli Zaretskii , marcowahlsoft@gmail.com, 36494@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Drew Adams writes: > (global-set-key [S-down] (lambda () (interactive) (scroll-up 1))) > (global-set-key [S-up] (lambda () (interactive) (scroll-down 1))) > > (But named functions are better than anonymous ones, for key binding. > And yes, it would be good to let a numeric prefix arg scroll that > many lines.) I think you're looking for scroll-up-line and scroll-down-line (introduced in 24.1). From debbugs-submit-bounces@debbugs.gnu.org Thu Jul 04 16:38:28 2019 Received: (at 36494) by debbugs.gnu.org; 4 Jul 2019 20:38:28 +0000 Received: from localhost ([127.0.0.1]:51991 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hj8Uu-0000Sz-0J for submit@debbugs.gnu.org; Thu, 04 Jul 2019 16:38:28 -0400 Received: from fossa.birch.relay.mailchannels.net ([23.83.209.62]:57074) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hj8Up-0000Sp-H7 for 36494@debbugs.gnu.org; Thu, 04 Jul 2019 16:38:26 -0400 X-Sender-Id: dreamhost|x-authsender|jurta@jurta.org Received: from relay.mailchannels.net (localhost [127.0.0.1]) by relay.mailchannels.net (Postfix) with ESMTP id 199F05015C4; Thu, 4 Jul 2019 20:38:22 +0000 (UTC) Received: from pdx1-sub0-mail-a17.g.dreamhost.com (100-96-8-155.trex.outbound.svc.cluster.local [100.96.8.155]) (Authenticated sender: dreamhost) by relay.mailchannels.net (Postfix) with ESMTPA id 7FD9150193B; Thu, 4 Jul 2019 20:38:21 +0000 (UTC) X-Sender-Id: dreamhost|x-authsender|jurta@jurta.org Received: from pdx1-sub0-mail-a17.g.dreamhost.com ([TEMPUNAVAIL]. [64.90.62.162]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384) by 0.0.0.0:2500 (trex/5.17.3); Thu, 04 Jul 2019 20:38:21 +0000 X-MC-Relay: Neutral X-MailChannels-SenderId: dreamhost|x-authsender|jurta@jurta.org X-MailChannels-Auth-Id: dreamhost X-Shade-Desert: 011551a57f8dc8ca_1562272701792_766574888 X-MC-Loop-Signature: 1562272701792:3334909462 X-MC-Ingress-Time: 1562272701792 Received: from pdx1-sub0-mail-a17.g.dreamhost.com (localhost [127.0.0.1]) by pdx1-sub0-mail-a17.g.dreamhost.com (Postfix) with ESMTP id BB1807F6C0; Thu, 4 Jul 2019 13:38:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=linkov.net; h=from:to:cc :subject:references:date:in-reply-to:message-id:mime-version :content-type; s=linkov.net; bh=/Yu1/aOCM/iIdhnlVzPzy3Cq0as=; b= JsLPpkiaHtlyraXv8/SVPwnEdkH7vW0ONe4n4CakXEtmxUGD5khPXlNDrSSEO43T V+pMjD1QcMhBT/ZZNQTaN984PJErtjEciSEG+AByXCzWdVWPwoB185WN6hEhU8eL qjmbXXl/INsSTrL7yTb/C2YkuOf9tYFLARnKJv/0yC4= Received: from mail.jurta.org (m91-129-109-127.cust.tele2.ee [91.129.109.127]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) (Authenticated sender: jurta@jurta.org) by pdx1-sub0-mail-a17.g.dreamhost.com (Postfix) with ESMTPSA id 216927F6BC; Thu, 4 Jul 2019 13:38:18 -0700 (PDT) X-DH-BACKEND: pdx1-sub0-mail-a17 From: Juri Linkov To: marcowahlsoft@gmail.com Subject: Re: bug#36494: 27.0.50; [Proposition] New option to scroll up regardless of eob Organization: LINKOV.NET References: <84ftnmjc37.fsf@gmail.com> Date: Thu, 04 Jul 2019 23:13:41 +0300 In-Reply-To: <84ftnmjc37.fsf@gmail.com> (marcowahlsoft@gmail.com's message of "Thu, 04 Jul 2019 13:03:40 +0200") Message-ID: <87bly937ay.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-VR-OUT-STATUS: OK X-VR-OUT-SCORE: 0 X-VR-OUT-SPAMCAUSE: gggruggvucftvghtrhhoucdtuddrgeduvddrfedvgdduheegucetufdoteggodetrfdotffvucfrrhhofhhilhgvmecuggftfghnshhusghstghrihgsvgdpffftgfetoffjqffuvfenuceurghilhhouhhtmecufedttdenucenucfjughrpefhvffuohhfffgjkfgfgggtsehttdertddtredtnecuhfhrohhmpefluhhrihcunfhinhhkohhvuceojhhurhhisehlihhnkhhovhdrnhgvtheqnecukfhppeeluddruddvledruddtledruddvjeenucfrrghrrghmpehmohguvgepshhmthhppdhhvghlohepmhgrihhlrdhjuhhrthgrrdhorhhgpdhinhgvthepledurdduvdelrddutdelrdduvdejpdhrvghtuhhrnhdqphgrthhhpefluhhrihcunfhinhhkohhvuceojhhurhhisehlihhnkhhovhdrnhgvtheqpdhmrghilhhfrhhomhepjhhurhhisehlihhnkhhovhdrnhgvthdpnhhrtghpthhtohepmhgrrhgtohifrghhlhhsohhfthesghhmrghilhdrtghomhenucevlhhushhtvghrufhiiigvpedt X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 36494 Cc: 36494@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) > +(defcustom scroll-lock-switch-to-forward-line-at-eob > + t > + "If set then don't scroll if the end of buffer is visible.") Please avoid such long names. A variable name doesn't require completeness like in a doc string. scroll-lock-forward-line-at-eob is enough, or maybe even scroll-lock-at-eob to define behavior at the end of the buffer - that opens a possibility of adding more options in the future. From debbugs-submit-bounces@debbugs.gnu.org Thu Jul 04 16:59:20 2019 Received: (at 36494) by debbugs.gnu.org; 4 Jul 2019 20:59:20 +0000 Received: from localhost ([127.0.0.1]:52014 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hj8p6-00013L-99 for submit@debbugs.gnu.org; Thu, 04 Jul 2019 16:59:20 -0400 Received: from mail-wm1-f50.google.com ([209.85.128.50]:35674) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hj8p4-000135-Q8 for 36494@debbugs.gnu.org; Thu, 04 Jul 2019 16:59:19 -0400 Received: by mail-wm1-f50.google.com with SMTP id l2so44093wmg.0 for <36494@debbugs.gnu.org>; Thu, 04 Jul 2019 13:59:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:organization:references:date:in-reply-to :message-id:user-agent:mime-version; bh=mIaiS83r6c/ioDe+fG9RifEf31vuPVeYCU6SQv6rLnE=; b=RVfxFy9AESD+T26d3DefMlNUPgvustmij/IrAblqr3ErEoTiNEe8IsJXdCxxTLTEhm Q4TaXd7bdUu8HDOXo+K91LRmByuoZcunaT6sSl701IUAZj4Chdjpm0hvTxbYPotR/C6u Wr2co1MD6YZ9j+vt2nnb9VWmo/a9TaR1X4T9Yh8eFebuWlMOkq8otHgbH+FDjPJsRtkN XnSxTGd5lhN9nJrKbQUl75IrQnIphRglJS7TUdn0C01L36v5PSSGmYJCHz2XgtQ6QbVd jgeZBod0rqa3e9HsbVDanLcDqR2pLATUL9Z29qWOnxK2ZSdalClr9gKqOWOvixR+ziJi u1ug== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:organization:references:date :in-reply-to:message-id:user-agent:mime-version; bh=mIaiS83r6c/ioDe+fG9RifEf31vuPVeYCU6SQv6rLnE=; b=ixQQ29bGJwh53sFRGI+MihR9FYwn9MFPbm/npvAF52mzWXxVNy1lvnJuIz0lwfeI18 7eJQJlClXsBX+IuPjww6bBR1vv2pG8YyKJGoVkwD7MXdjJLUBs6Cizynt1bYTUG6qbKF N35B/QSvXC2oRQCrn3N5YRS2tDigsE62K8rPfZZjV42GuOMbRlNko3zNsDs9L2rpnNnN NChRVlm/LDIPi5SzLno5T1o8cyXcA1J+W+3OFsWX+6w8HkKlVMbAYMeSEb21OZ+VAh0D 3cJePCLBmqGqaU4wLh2rsMJXXsdKXhoDscrP8n1ulKnbdibqW61DMsqy6AWowKni+G1X ukxA== X-Gm-Message-State: APjAAAUEgsfCVUUcD0lZSDEsRYl0Y1MNcsToc9raEiVh7R0yVTRUAa1l I0EYxOzVkj/Uj3EcvL9z6Bo= X-Google-Smtp-Source: APXvYqzTGmOR7t7OGG2giFqY8INh1jog6wh4ZJm49NcucDwf97i4gUxX7wZ4CjokOGujZMLkwfw/Cg== X-Received: by 2002:a7b:c347:: with SMTP id l7mr19059wmj.163.1562273952812; Thu, 04 Jul 2019 13:59:12 -0700 (PDT) Received: from tm6592 (p200300ECDF02E4260C537504E5DE56DB.dip0.t-ipconnect.de. [2003:ec:df02:e426:c53:7504:e5de:56db]) by smtp.gmail.com with ESMTPSA id v23sm30895wmj.32.2019.07.04.13.59.11 (version=TLS1_3 cipher=AEAD-AES256-GCM-SHA384 bits=256/256); Thu, 04 Jul 2019 13:59:12 -0700 (PDT) From: Marco Wahl To: Eli Zaretskii Subject: Re: bug#36494: 27.0.50; [Proposition] New option to scroll up regardless of eob Organization: Marco Wahl References: <84ftnmjc37.fsf@gmail.com> <83d0iqaqvh.fsf@gnu.org> <847e8xkjpp.fsf@gmail.com> <837e8xbw70.fsf@gnu.org> Date: Thu, 04 Jul 2019 22:59:11 +0200 In-Reply-To: <837e8xbw70.fsf@gnu.org> (Eli Zaretskii's message of "Thu, 04 Jul 2019 19:28:51 +0300") Message-ID: <84ef351ppc.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 36494 Cc: Marco Wahl , 36494@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Eli Zaretskii writes: >> From: Marco Wahl >> Cc: marcowahlsoft@gmail.com, 36494@debbugs.gnu.org >> Date: Thu, 04 Jul 2019 15:33:38 +0200 >> >> > How about if we bind S-DOWN and S-UP to commands that scroll to EOB >> > without introducing any new option? That would mimic pages like Less >> > which stop at EOB with an unshifted key, but continue scrolling with a >> > shifted key. >> >> That sounds good to me. Also the mimicing of similar features elsewhere. > > Would you like to submit a patch along those lines? Please see the attempt in the attachment. There is one new function `scroll-lock-next-line-always-scroll' which gets bound to S-down. Further there are a few tests for this function. AFAICS the up command needs no special handling with regards to scroll-lock-mode. From debbugs-submit-bounces@debbugs.gnu.org Thu Jul 04 17:07:25 2019 Received: (at 36494) by debbugs.gnu.org; 4 Jul 2019 21:07:25 +0000 Received: from localhost ([127.0.0.1]:52024 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hj8wu-0003Qw-I1 for submit@debbugs.gnu.org; Thu, 04 Jul 2019 17:07:24 -0400 Received: from mail-wr1-f43.google.com ([209.85.221.43]:41732) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hj8ws-0003Qg-Mo for 36494@debbugs.gnu.org; Thu, 04 Jul 2019 17:07:23 -0400 Received: by mail-wr1-f43.google.com with SMTP id c2so7805518wrm.8 for <36494@debbugs.gnu.org>; Thu, 04 Jul 2019 14:07:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:organization:references:date:in-reply-to :message-id:user-agent:mime-version; bh=8Ch/A5cCcFcZfpG7Yk3X+XuYBKIODAWBAjw3rIYgcLw=; b=S7AkFtXnHYS/oym/nj31IqtFmieoJyY5q0VcaIsgaw+kKANpBSapLfYywu70bpb1sQ NIR/UmvZqLm51PGcEH1HGQOEKdT/XJUu9RLoM2OhuAsNpjq5jkwEAXy0yJ+42wU4KNGe Pmm1byLKeF5vSJWWmmk6SDWlhAYEMkD0sU3wI9ftoLAjAtETpGOQr0R2nFEpN1nY0jQu 7vr8em1hiFY5Pf7VQmwoS+VOSqQ4JxJNuECeYJ6GIGKRu1/BR9O6PnzY/Jb1JBBzAdKh CAukDoUTey4uO9lFmDArLd6Iv9xSg6M3LssKrFt08HS07+/hmhhuX5Lhb+LZtd/eNOvN zwTA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:organization:references:date :in-reply-to:message-id:user-agent:mime-version; bh=8Ch/A5cCcFcZfpG7Yk3X+XuYBKIODAWBAjw3rIYgcLw=; b=OOfXRGNOdMeM5p8fJdlmWPRvztGg9t1l8ZK36NOsRJ3qby/PIuU7zOuBEIZFT5I9Jn myJQ/g16YyxqJr20Mkd7PWBrPmobW9yJlbhYY/tBAez81QpL8MydUN3YYOmSHj4piyNv p3e15LzZ6vFmmgpG2LAf8yYRnFwaYvAR4diw15trd6Ie+EjAFGZGbLp5QbwNo3PR2q8Z 238HL7Zk66xCySO7g/a+wAmBMBcxRokxvMwdGlE2/EgfX0tQPOyH47Afo22FeQhPWmMw oXyT0qHtJf7GHxG1BoWbFhgv/3C2GmlEgB9E7iG51TzVEGa5rirC2BimxM1v9FItoVM7 8qtw== X-Gm-Message-State: APjAAAUbf66d3KtxLUUN3fhQJ0D52fvz9rinwjAUPyFvysbVfBkMJG6C 6SKZ5QV1+YzL8vjSLdxVGok= X-Google-Smtp-Source: APXvYqz4Zx5E3KUwZYoIKbqE57hh7fKWz2jj+m46BzWZHk/XVmlmKYfviYZQ2NMHy5FynwBvp4aYwg== X-Received: by 2002:adf:f1d1:: with SMTP id z17mr363081wro.190.1562274436864; Thu, 04 Jul 2019 14:07:16 -0700 (PDT) Received: from tm6592 (p200300ECDF02E4260C537504E5DE56DB.dip0.t-ipconnect.de. [2003:ec:df02:e426:c53:7504:e5de:56db]) by smtp.gmail.com with ESMTPSA id y16sm7066174wru.28.2019.07.04.14.07.15 (version=TLS1_3 cipher=AEAD-AES256-GCM-SHA384 bits=256/256); Thu, 04 Jul 2019 14:07:16 -0700 (PDT) From: Marco Wahl To: Eli Zaretskii Subject: Re: bug#36494: 27.0.50; [Proposition] New option to scroll up regardless of eob Organization: Marco Wahl References: <84ftnmjc37.fsf@gmail.com> <83d0iqaqvh.fsf@gnu.org> <847e8xkjpp.fsf@gmail.com> <837e8xbw70.fsf@gnu.org> Date: Thu, 04 Jul 2019 23:07:15 +0200 In-Reply-To: <837e8xbw70.fsf@gnu.org> (Eli Zaretskii's message of "Thu, 04 Jul 2019 19:28:51 +0300") Message-ID: <84zhltzeyk.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 36494 Cc: Marco Wahl , 36494@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --=-=-= Content-Type: text/plain Ok, sorry for the patch missing. Here is the patch. --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0001-New-function-for-scroll-lock-mode-to-always-scroll.patch >From baf7c0cd4c095d283a9d418dda4e6d1e5f565d24 Mon Sep 17 00:00:00 2001 From: Marco Wahl Date: Thu, 4 Jul 2019 22:32:44 +0200 Subject: [PATCH] New function for scroll-lock-mode to always scroll * lisp/scroll-lock.el (scroll-lock-next-line-always-scroll): New function. Opposed to scroll-lock-next-line it does not switch to forward-line at eob. S-down is the default key binding for this function. * test/lisp/scroll-lock-tests.el: A few tests for scroll-lock-next-line-always-scroll. --- lisp/scroll-lock.el | 11 +++++ test/lisp/scroll-lock-tests.el | 73 ++++++++++++++++++++++++++++++++++ 2 files changed, 84 insertions(+) create mode 100644 test/lisp/scroll-lock-tests.el diff --git a/lisp/scroll-lock.el b/lisp/scroll-lock.el index 8281edb172..5b7a69a17c 100644 --- a/lisp/scroll-lock.el +++ b/lisp/scroll-lock.el @@ -36,6 +36,7 @@ scroll-lock-mode-map (define-key map [remap previous-line] 'scroll-lock-previous-line) (define-key map [remap forward-paragraph] 'scroll-lock-forward-paragraph) (define-key map [remap backward-paragraph] 'scroll-lock-backward-paragraph) + (define-key map [S-down] 'scroll-lock-next-line-always-scroll) map) "Keymap for Scroll Lock mode.") @@ -81,6 +82,16 @@ scroll-lock-move-to-column (move-to-column column) (forward-char (min column (- (line-end-position) (point)))))) +(defun scroll-lock-next-line-always-scroll (&optional arg) + "Scroll up ARG lines keeping point fixed." + (interactive "p") + (or arg (setq arg 1)) + (scroll-lock-update-goal-column) + (condition-case nil + (scroll-up arg) + (end-of-buffer (scroll-up (1- (count-screen-lines (point) (point-max)))))) + (scroll-lock-move-to-column scroll-lock-temporary-goal-column)) + (defun scroll-lock-next-line (&optional arg) "Scroll up ARG lines keeping point fixed." (interactive "p") diff --git a/test/lisp/scroll-lock-tests.el b/test/lisp/scroll-lock-tests.el new file mode 100644 index 0000000000..590ab4518c --- /dev/null +++ b/test/lisp/scroll-lock-tests.el @@ -0,0 +1,73 @@ +;;; scroll-lock-tests.el --- Test suite for scroll-lock -*- lexical-binding: t -*- + +;; Copyright (C) 2019 Free Software Foundation, Inc. + +;; This file is part of GNU Emacs. + +;; GNU Emacs is free software: you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation, either version 3 of the License, or +;; (at your option) any later version. + +;; GNU Emacs is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with GNU Emacs. If not, see . + +;;; Code: + +(require 'ert) +(require 'scroll-lock) + + +(defun point-in-window-line-p (n) + "Return if point is in window line N. Counting starts with 0. +Precondition: the line N must be available." + (save-excursion + (let ((point (progn (beginning-of-line) (point)))) + (let ((moved-to-line (move-to-window-line n))) + (cl-assert (= n moved-to-line) t "precondition violation")) + (= point (progn (beginning-of-line) (point)))))) + + +(ert-deftest scroll-lock-next-line-always-scroll-1 () + (with-temp-buffer + (insert "\n\n\n") + (goto-char (point-min)) + (switch-to-buffer (current-buffer)) + (scroll-lock-next-line-always-scroll) + (should (point-in-window-line-p 0)))) + +(ert-deftest scroll-lock-next-line-always-scroll-2 () + (with-temp-buffer + (scroll-lock-mode) + (insert "\n\n\n") + (goto-char (1+ (point-min))) + (switch-to-buffer (current-buffer)) + (scroll-lock-next-line-always-scroll) + (should (point-in-window-line-p 1)))) + +(ert-deftest scroll-lock-next-line-always-scroll-3 () + (with-temp-buffer + (scroll-lock-mode) + (insert "\n\n\n") + (goto-char (1+ (point-min))) + (switch-to-buffer (current-buffer)) + (scroll-lock-next-line-always-scroll 1234) + (should (point-in-window-line-p 1)))) + +(ert-deftest scroll-lock-next-line-always-scroll-4 () + (with-temp-buffer + (scroll-lock-mode) + (insert (make-string 1000 ?\n)) + (goto-char (1+ (point-min))) + (switch-to-buffer (current-buffer)) + (scroll-lock-next-line-always-scroll 1234) + (should (point-in-window-line-p 1)))) + +(provide 'scroll-lock-tests) + +;;; scroll-lock-tests.el ends here -- 2.22.0 --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Thu Jul 04 18:28:36 2019 Received: (at 36494) by debbugs.gnu.org; 4 Jul 2019 22:28:37 +0000 Received: from localhost ([127.0.0.1]:52090 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hjADU-0003lW-Kz for submit@debbugs.gnu.org; Thu, 04 Jul 2019 18:28:36 -0400 Received: from userp2130.oracle.com ([156.151.31.86]:37432) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hjADS-0003lH-RX for 36494@debbugs.gnu.org; Thu, 04 Jul 2019 18:28:35 -0400 Received: from pps.filterd (userp2130.oracle.com [127.0.0.1]) by userp2130.oracle.com (8.16.0.27/8.16.0.27) with SMTP id x64MSSN0149985; Thu, 4 Jul 2019 22:28:28 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=mime-version : message-id : date : from : sender : to : cc : subject : references : in-reply-to : content-type : content-transfer-encoding; s=corp-2018-07-02; bh=0q7rTYKEMaIrSij3IVDaOKReTfG9fn2fc6C+Cigp7iM=; b=hW4U6qL4uPA7MZV0QLHmExcxIyrlFg7N51FS1T0Bj7GoSVRWL0kDvbZ/FxWjoZ75OOl9 uCVi3OTjmKwQSgpbN2JUqgV/ydXQjQyfDUMluxYRhl8+GNknAOxd49Cha7BS5ea1lot0 iEbQNukHv5KRLgwcSHZxP+G0FuvKkgfOH6mIyAb1mGq48uDqsIk2PEWsRIaA2pRIYBxi wDRgo4GqEeUr+wqJaqrW+c77r0hYx5wqm9KHzwY9l6G8M6ZykyT/YroqdpP8SqqbU0em mFNLzi5VCCTiczGnVJ+EfvwHNGZ3pV0Dzp27QB0qMxMUxysSMfx/W/REIisY1ZCQqkEp dA== Received: from aserp3020.oracle.com (aserp3020.oracle.com [141.146.126.70]) by userp2130.oracle.com with ESMTP id 2te61egbc4-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 04 Jul 2019 22:28:27 +0000 Received: from pps.filterd (aserp3020.oracle.com [127.0.0.1]) by aserp3020.oracle.com (8.16.0.27/8.16.0.27) with SMTP id x64MSHD6126846; Thu, 4 Jul 2019 22:28:27 GMT Received: from userv0122.oracle.com (userv0122.oracle.com [156.151.31.75]) by aserp3020.oracle.com with ESMTP id 2th9ec50c3-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 04 Jul 2019 22:28:27 +0000 Received: from abhmp0007.oracle.com (abhmp0007.oracle.com [141.146.116.13]) by userv0122.oracle.com (8.14.4/8.14.4) with ESMTP id x64MSOEM018410; Thu, 4 Jul 2019 22:28:25 GMT MIME-Version: 1.0 Message-ID: <28a2db2e-0742-49f7-8f97-3ac3874e032c@default> Date: Thu, 4 Jul 2019 15:28:22 -0700 (PDT) From: Drew Adams To: Noam Postavsky Subject: RE: bug#36494: 27.0.50; [Proposition] New option to scroll up regardless of eob References: <84ftnmjc37.fsf@gmail.com>> <83d0iqaqvh.fsf@gnu.org>> <80277bb2-d964-4930-ae91-0f0e96ed3124@default> <85o929eicd.fsf@gmail.com> In-Reply-To: <85o929eicd.fsf@gmail.com> X-Priority: 3 X-Mailer: Oracle Beehive Extensions for Outlook 2.0.1.9.1 (1003210) [OL 16.0.4861.0 (x86)] Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable X-Proofpoint-Virus-Version: vendor=nai engine=6000 definitions=9308 signatures=668688 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 malwarescore=0 phishscore=0 bulkscore=0 spamscore=0 mlxscore=0 mlxlogscore=790 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1810050000 definitions=main-1907040292 X-Proofpoint-Virus-Version: vendor=nai engine=6000 definitions=9308 signatures=668688 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 priorityscore=1501 malwarescore=0 suspectscore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=859 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1810050000 definitions=main-1907040293 X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 36494 Cc: Eli Zaretskii , marcowahlsoft@gmail.com, 36494@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > > (global-set-key [S-down] (lambda () (interactive) (scroll-up 1))) > > (global-set-key [S-up] (lambda () (interactive) (scroll-down 1))) > > > > (But named functions are better than anonymous ones, for key binding. > > And yes, it would be good to let a numeric prefix arg scroll that > > many lines.) >=20 > I think you're looking for scroll-up-line and scroll-down-line > (introduced in 24.1). Exactly. (I use the above also with old Emacs releases, and didn't bother to define a named command for it.) From debbugs-submit-bounces@debbugs.gnu.org Sat Jul 13 03:37:39 2019 Received: (at 36494) by debbugs.gnu.org; 13 Jul 2019 07:37:39 +0000 Received: from localhost ([127.0.0.1]:41398 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hmCbD-0004QO-Cc for submit@debbugs.gnu.org; Sat, 13 Jul 2019 03:37:39 -0400 Received: from eggs.gnu.org ([209.51.188.92]:40815) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hmCbB-0004QC-DI for 36494@debbugs.gnu.org; Sat, 13 Jul 2019 03:37:38 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:58690) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hmCb6-0000QF-80; Sat, 13 Jul 2019 03:37:32 -0400 Received: from [176.228.60.248] (port=3402 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1hmCb5-0005xx-Eq; Sat, 13 Jul 2019 03:37:32 -0400 Date: Sat, 13 Jul 2019 10:37:28 +0300 Message-Id: <83pnme1j2f.fsf@gnu.org> From: Eli Zaretskii To: Marco Wahl In-reply-to: <84zhltzeyk.fsf@gmail.com> (message from Marco Wahl on Thu, 04 Jul 2019 23:07:15 +0200) Subject: Re: bug#36494: 27.0.50; [Proposition] New option to scroll up regardless of eob References: <84ftnmjc37.fsf@gmail.com> <83d0iqaqvh.fsf@gnu.org> <847e8xkjpp.fsf@gmail.com> <837e8xbw70.fsf@gnu.org> <84zhltzeyk.fsf@gmail.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 36494 Cc: 36494@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Marco Wahl > Cc: Marco Wahl , 36494@debbugs.gnu.org > Date: Thu, 04 Jul 2019 23:07:15 +0200 > > Ok, sorry for the patch missing. Here is the patch. Thanks. This seems to work well, but when there's only the single last line visible in the window, and the cursor is at EOB, S-DOWN scrolls back, i.e. after pressing it Emacs now shows 2 last lines. I don't think this is intended, is it? Also, this is a user-visible change, so it needs to be called out in NEWS. Could you please resubmit with these minor nits fixed? From debbugs-submit-bounces@debbugs.gnu.org Sat Jul 13 16:10:31 2019 Received: (at 36494) by debbugs.gnu.org; 13 Jul 2019 20:10:31 +0000 Received: from localhost ([127.0.0.1]:43427 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hmOLl-0005TQ-HW for submit@debbugs.gnu.org; Sat, 13 Jul 2019 16:10:31 -0400 Received: from mail-wr1-f46.google.com ([209.85.221.46]:37427) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hmOLj-0005TA-N4 for 36494@debbugs.gnu.org; Sat, 13 Jul 2019 16:10:28 -0400 Received: by mail-wr1-f46.google.com with SMTP id n9so13191128wrr.4 for <36494@debbugs.gnu.org>; Sat, 13 Jul 2019 13:10:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:organization:references:date:in-reply-to :message-id:user-agent:mime-version; bh=+Bhrqf1a3zCa2e9vsSPJuXps5CfV2hyEaiiysd+hyJ0=; b=k6J/FRuUparrk2LIjUODZ0hjDHYLWYaz56Jm26tZLENAkceWwJGsuP3hWCjVOiA1aK xrAbeqK+SjCKMv4lcAFKVUk65PB4OPJgwNvKlSf+ZGzB/TgiRrabLCg8VTM8hkdoIRlW 17JiKmKkj+1Sc9kKoOVnolT6iKLZ0Smss+h1f4KSHwM8rIAU7k4IWbuQ02q135qnf7PF D8upIuVczcdySjWCqlByvO3nG1Owuc2CJOd5MPr2o4rtC/XzJtBhtyLb0LgcpSPiP0N0 cjQEkE0wCyZ+9s1lqOHH7+0eb3RlFtcunAC6wW+kidjT74IAKygA7G9qZh4MuE0yJlbA BiSA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:organization:references:date :in-reply-to:message-id:user-agent:mime-version; bh=+Bhrqf1a3zCa2e9vsSPJuXps5CfV2hyEaiiysd+hyJ0=; b=gfn/fnzspI3biWoInrYxJlasY4toKjME1NBk/eB4SZo63KA4w3jSmh5OV0IOZqUk+w 3z8F37+OYeilRzu7u4V4TlJVYc7ZSZJ/yIKh30gQgkY2uS6atklBcFFDyivpDHp+Hh35 dZP3DSWZnQRSxjrJ69uESDL0HZkH6fZM+38Wmr3ZBfq3vn+42zIgV4X453ZkS7rSi7EP me7tzPY1971mtVlgxoiwMqHKQEiaxBh4IVWnJ7B+PE5gpfWf/AUh6M1t7yfv3PtyHYmZ AlABcw9PbBiKUtKAWX4AqRjGqJ2t0Bdn0FZhdC7H2wqGvB7AmEsQNkN7Y6A1ShSLnP9n kv8A== X-Gm-Message-State: APjAAAWW4A4X19yLdWH7xgXBXg4AHNURt4n+RxVG4tzQLiJ0HJSGlgAo 93h1g0s45R/4/BX0/RU1gx8= X-Google-Smtp-Source: APXvYqwJCdWpmmkgHYOxyF00t7lS/Ddy3GBNMvwVhgEqm9aC8Qy62/AY6Jq4VgHuC6P+one0Wf9qMQ== X-Received: by 2002:adf:8028:: with SMTP id 37mr18615625wrk.106.1563048621990; Sat, 13 Jul 2019 13:10:21 -0700 (PDT) Received: from tm6592 (p200300ECDF02E4CEC8C28A2C900642DF.dip0.t-ipconnect.de. [2003:ec:df02:e4ce:c8c2:8a2c:9006:42df]) by smtp.gmail.com with ESMTPSA id r5sm12327697wmh.35.2019.07.13.13.10.20 (version=TLS1_3 cipher=AEAD-AES256-GCM-SHA384 bits=256/256); Sat, 13 Jul 2019 13:10:20 -0700 (PDT) From: Marco Wahl To: Eli Zaretskii Subject: Re: bug#36494: 27.0.50; [Proposition] New option to scroll up regardless of eob Organization: Marco Wahl References: <84ftnmjc37.fsf@gmail.com> <83d0iqaqvh.fsf@gnu.org> <847e8xkjpp.fsf@gmail.com> <837e8xbw70.fsf@gnu.org> <84zhltzeyk.fsf@gmail.com> <83pnme1j2f.fsf@gnu.org> Date: Sat, 13 Jul 2019 22:10:19 +0200 In-Reply-To: <83pnme1j2f.fsf@gnu.org> (Eli Zaretskii's message of "Sat, 13 Jul 2019 10:37:28 +0300") Message-ID: <84o91xvgpg.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 36494 Cc: 36494@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --=-=-= Content-Type: text/plain Eli Zaretskii writes: >> From: Marco Wahl >> Cc: Marco Wahl , 36494@debbugs.gnu.org >> Date: Thu, 04 Jul 2019 23:07:15 +0200 >> >> Ok, sorry for the patch missing. Here is the patch. > > Thanks. > > This seems to work well, but when there's only the single last line > visible in the window, and the cursor is at EOB, S-DOWN scrolls back, > i.e. after pressing it Emacs now shows 2 last lines. I don't think > this is intended, is it? No. Thanks for your review and your finding. The scroll back behavior was due to a counting issue. With the new patch the counting has gone away entirely. > Also, this is a user-visible change, so it needs to be called out in > NEWS. > > Could you please resubmit with these minor nits fixed? Okay. Find a respective proposition in the attachment section, please. Best regards, Marco --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0001-New-function-for-scroll-lock-to-almost-always-scroll.patch >From e8d3ee812716daa932a62c1ae40e37b3cb326a77 Mon Sep 17 00:00:00 2001 From: Marco Wahl Date: Thu, 4 Jul 2019 22:32:44 +0200 Subject: [PATCH] New function for scroll-lock to almost always scroll * lisp/scroll-lock.el (scroll-lock-next-line-always-scroll): New function. Opposed to scroll-lock-next-line it does not switch to forward-line at eob. S-down is the default key binding for this function. * test/lisp/scroll-lock-tests.el: A few tests for scroll-lock-next-line-always-scroll. * etc/NEWS: Add a respective note. --- etc/NEWS | 7 ++++ lisp/scroll-lock.el | 11 ++++++ test/lisp/scroll-lock-tests.el | 68 ++++++++++++++++++++++++++++++++++ 3 files changed, 86 insertions(+) create mode 100644 test/lisp/scroll-lock-tests.el diff --git a/etc/NEWS b/etc/NEWS index abbece374a..efa76fe356 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -1644,6 +1644,13 @@ This runs after changing the dictionary and could be used to automatically spellcheck a buffer when changing language without needing to advice 'ispell-change-dictionary'. +** scroll-lock + +--- +*** New command 'scroll-lock-next-line-always-scroll'. +This command is bound to 'S-down' and scrolls the buffer up in +particular when the end of the buffer is visible in the window. + * New Modes and Packages in Emacs 27.1 diff --git a/lisp/scroll-lock.el b/lisp/scroll-lock.el index 8281edb172..3a74c11b7a 100644 --- a/lisp/scroll-lock.el +++ b/lisp/scroll-lock.el @@ -36,6 +36,7 @@ scroll-lock-mode-map (define-key map [remap previous-line] 'scroll-lock-previous-line) (define-key map [remap forward-paragraph] 'scroll-lock-forward-paragraph) (define-key map [remap backward-paragraph] 'scroll-lock-backward-paragraph) + (define-key map [S-down] 'scroll-lock-next-line-always-scroll) map) "Keymap for Scroll Lock mode.") @@ -81,6 +82,16 @@ scroll-lock-move-to-column (move-to-column column) (forward-char (min column (- (line-end-position) (point)))))) +(defun scroll-lock-next-line-always-scroll (&optional arg) + "Scroll up ARG lines keeping point fixed." + (interactive "p") + (or arg (setq arg 1)) + (scroll-lock-update-goal-column) + (condition-case nil + (scroll-up arg) + (end-of-buffer (goto-char (point-max)) (recenter 1))) + (scroll-lock-move-to-column scroll-lock-temporary-goal-column)) + (defun scroll-lock-next-line (&optional arg) "Scroll up ARG lines keeping point fixed." (interactive "p") diff --git a/test/lisp/scroll-lock-tests.el b/test/lisp/scroll-lock-tests.el new file mode 100644 index 0000000000..f1ffeed265 --- /dev/null +++ b/test/lisp/scroll-lock-tests.el @@ -0,0 +1,68 @@ +;;; scroll-lock-tests.el --- Test suite for scroll-lock -*- lexical-binding: t -*- + +;; Copyright (C) 2019 Free Software Foundation, Inc. + +;; This file is part of GNU Emacs. + +;; GNU Emacs is free software: you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation, either version 3 of the License, or +;; (at your option) any later version. + +;; GNU Emacs is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with GNU Emacs. If not, see . + +;;; Code: + +(require 'ert) +(require 'scroll-lock) + + +(defun point-in-window-line-p (n) + "Return if point is in window line N. +Meaning of N as in `move-to-window-line'. +Precondition: the line N must be available in the window." + (save-excursion + (let ((point (progn (beginning-of-line) (point)))) + (let ((moved-to-line (move-to-window-line n))) + (cl-assert (= n moved-to-line) t "precondition violation")) + (= point (progn (beginning-of-line) (point)))))) + + +(ert-deftest scroll-lock-next-line-always-scroll-1 () + "Point stays in top line." + (with-temp-buffer + (insert "\n\n\n") + (goto-char (point-min)) + (switch-to-buffer (current-buffer)) + (scroll-lock-next-line-always-scroll) + (should (point-in-window-line-p 0)))) + +(ert-deftest scroll-lock-next-line-always-scroll-2 () + "Point stays in second line." + (with-temp-buffer + (scroll-lock-mode) + (insert "\n\n\n") + (goto-char (1+ (point-min))) + (switch-to-buffer (current-buffer)) + (scroll-lock-next-line-always-scroll) + (should (point-in-window-line-p 1)))) + +(ert-deftest scroll-lock-next-line-always-scroll-3 () + "Point stays in second line when scrolling beyond the number of buffer lines." + (with-temp-buffer + (scroll-lock-mode) + (insert (make-string 1000 ?\n)) + (goto-char (1+ (point-min))) + (switch-to-buffer (current-buffer)) + (scroll-lock-next-line-always-scroll 1234) + (should (point-in-window-line-p 1)))) + +(provide 'scroll-lock-tests) + +;;; scroll-lock-tests.el ends here -- 2.22.0 --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Sun Jul 14 02:26:22 2019 Received: (at 36494-done) by debbugs.gnu.org; 14 Jul 2019 06:26:22 +0000 Received: from localhost ([127.0.0.1]:43735 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hmXxm-0005A7-Hs for submit@debbugs.gnu.org; Sun, 14 Jul 2019 02:26:22 -0400 Received: from eggs.gnu.org ([209.51.188.92]:46290) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hmXxk-00059t-CK for 36494-done@debbugs.gnu.org; Sun, 14 Jul 2019 02:26:20 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:48224) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hmXxe-0000Ic-3x; Sun, 14 Jul 2019 02:26:14 -0400 Received: from [176.228.60.248] (port=4021 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1hmXxd-0001Ii-9s; Sun, 14 Jul 2019 02:26:13 -0400 Date: Sun, 14 Jul 2019 09:25:57 +0300 Message-Id: <838st1yvwq.fsf@gnu.org> From: Eli Zaretskii To: Marco Wahl In-reply-to: <84o91xvgpg.fsf@gmail.com> (message from Marco Wahl on Sat, 13 Jul 2019 22:10:19 +0200) Subject: Re: bug#36494: 27.0.50; [Proposition] New option to scroll up regardless of eob References: <84ftnmjc37.fsf@gmail.com> <83d0iqaqvh.fsf@gnu.org> <847e8xkjpp.fsf@gmail.com> <837e8xbw70.fsf@gnu.org> <84zhltzeyk.fsf@gmail.com> <83pnme1j2f.fsf@gnu.org> <84o91xvgpg.fsf@gmail.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 36494-done Cc: 36494-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Marco Wahl > Cc: 36494@debbugs.gnu.org > Date: Sat, 13 Jul 2019 22:10:19 +0200 > > > Could you please resubmit with these minor nits fixed? > > Okay. Find a respective proposition in the attachment section, please. Thanks, pushed to the master branch. One minor comment: in the future please mention the bug number in the commit log message (I added that this time). From unknown Sun Jun 15 08:52:05 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Sun, 11 Aug 2019 11:24:10 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator