Package: emacs;
Reported by: "John Haman" <mail <at> johnhaman.org>
Date: Mon, 14 Jul 2025 20:56:01 UTC
Severity: normal
Found in version 30.1.90
Done: Eli Zaretskii <eliz <at> gnu.org>
View this message in rfc822 format
From: help-debbugs <at> gnu.org (GNU bug Tracking System) To: Eli Zaretskii <eliz <at> gnu.org> Cc: tracker <at> debbugs.gnu.org Subject: bug#79022: closed (30.1.90; Shift-select-mode does not appear to work when scroll-lock-mode is enabled) Date: Tue, 15 Jul 2025 13:25:07 +0000
[Message part 1 (text/plain, inline)]
Your message dated Tue, 15 Jul 2025 16:24:30 +0300 with message-id <86h5zdk2nl.fsf <at> gnu.org> and subject line Re: bug#79022: 30.1.90; Shift-select-mode does not appear to work when scroll-lock-mode is enabled has caused the debbugs.gnu.org bug report #79022, regarding 30.1.90; Shift-select-mode does not appear to work when scroll-lock-mode is enabled to be marked as done. (If you believe you have received this mail in error, please contact help-debbugs <at> gnu.org.) -- 79022: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=79022 GNU Bug Tracking System Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: "John Haman" <mail <at> johnhaman.org> To: bug-gnu-emacs <at> gnu.org Subject: 30.1.90; Shift-select-mode does not appear to work when scroll-lock-mode is enabled Date: Mon, 14 Jul 2025 15:54:13 -0400In short, I believe there is a bad interaction between scroll-lock-mode and shift-select-mode that prevent shift-select mode from working as intended when scroll-lock-mode is active. 1. Emacs -Q 2. Open a text file. 3. Enable scroll-lock-mode 4. Try to highlight some text using C-S-n or C-S-<down>. I expected it to be selected, but it is not. In GNU Emacs 30.1.90 (build 2, x86_64-pc-linux-gnu, X toolkit, cairo version 1.18.0, Xaw3d scroll bars) of 2025-06-13 built on JHAMAN2-LT Repository revision: 18d590e45721e9787fa22381d4f22a0f0a79cdef Repository branch: emacs-30 Windowing system distributor 'HC-Consult', version 11.0.210110000 System Description: Ubuntu 24.04.2 LTS Configured using: 'configure --with-x-toolkit=lucid 'CFLAGS=-O3 -fno-math-errno -funsafe-math-optimizations -fno-finite-math-only -fno-trapping-math -freciprocal-math -fno-rounding-math -fno-signaling-nans -fassociative-math -fno-signed-zeros -frename-registers -funroll-loops -mtune=native -march=native -fomit-frame-pointer'' Configured features: ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG LCMS2 LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 M17N_FLT MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS TREE_SITTER WEBP X11 XAW3D XDBE XIM XINPUT2 XPM LUCID ZLIB Important settings: value of $LANG: C.UTF-8 locale-coding-system: utf-8-unix Major mode: Helpful Minor modes in effect: git-identity-magit-mode: t global-git-commit-mode: t magit-auto-revert-mode: t global-undo-tree-mode: t undo-tree-mode: t electric-pair-mode: t olivetti-mode: t global-auto-revert-mode: t save-place-mode: t savehist-mode: t global-aggressive-indent-mode: t super-save-mode: t corfu-prescient-mode: t global-corfu-mode: t corfu-mode: t server-mode: t marginalia-mode: t vertico-multiform-mode: t vertico-mouse-mode: t vertico-prescient-mode: t prescient-persist-mode: t vertico-mode: t engine-mode: t recentf-mode: t global-hungry-delete-mode: t hungry-delete-mode: t minions-mode: t spacious-padding-mode: t activities-tabs-mode: t activities-mode: t popper-mode: t straight-use-package-mode: t straight-package-neutering-mode: t repeat-mode: t override-global-mode: t global-eldoc-mode: t show-paren-mode: t electric-indent-mode: t mouse-wheel-mode: t tab-bar-history-mode: t tab-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t minibuffer-regexp-mode: t buffer-read-only: t column-number-mode: t line-number-mode: t visual-line-mode: t transient-mark-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t abbrev-mode: t Load-path shadows: /home/john/.emacs.d/straight/build/transient/transient hides /usr/local/share/emacs/30.1.90/lisp/transient /home/john/.emacs.d/straight/build/modus-themes/theme-loaddefs hides /usr/local/share/emacs/30.1.90/lisp/theme-loaddefs /home/john/.emacs.d/straight/build/peg/peg hides /usr/local/share/emacs/30.1.90/lisp/progmodes/peg /home/john/.emacs.d/straight/build/org/ox hides /usr/local/share/emacs/30.1.90/lisp/org/ox /home/john/.emacs.d/straight/build/org/ox-texinfo hides /usr/local/share/emacs/30.1.90/lisp/org/ox-texinfo /home/john/.emacs.d/straight/build/org/ox-publish hides /usr/local/share/emacs/30.1.90/lisp/org/ox-publish /home/john/.emacs.d/straight/build/org/ox-org hides /usr/local/share/emacs/30.1.90/lisp/org/ox-org /home/john/.emacs.d/straight/build/org/ox-odt hides /usr/local/share/emacs/30.1.90/lisp/org/ox-odt /home/john/.emacs.d/straight/build/org/ox-md hides /usr/local/share/emacs/30.1.90/lisp/org/ox-md /home/john/.emacs.d/straight/build/org/ox-man hides /usr/local/share/emacs/30.1.90/lisp/org/ox-man /home/john/.emacs.d/straight/build/org/ox-latex hides /usr/local/share/emacs/30.1.90/lisp/org/ox-latex /home/john/.emacs.d/straight/build/org/ox-koma-letter hides /usr/local/share/emacs/30.1.90/lisp/org/ox-koma-letter /home/john/.emacs.d/straight/build/org/ox-icalendar hides /usr/local/share/emacs/30.1.90/lisp/org/ox-icalendar /home/john/.emacs.d/straight/build/org/ox-html hides /usr/local/share/emacs/30.1.90/lisp/org/ox-html /home/john/.emacs.d/straight/build/org/ox-beamer hides /usr/local/share/emacs/30.1.90/lisp/org/ox-beamer /home/john/.emacs.d/straight/build/org/ox-ascii hides /usr/local/share/emacs/30.1.90/lisp/org/ox-ascii /home/john/.emacs.d/straight/build/org/org hides /usr/local/share/emacs/30.1.90/lisp/org/org /home/john/.emacs.d/straight/build/org/org-version hides /usr/local/share/emacs/30.1.90/lisp/org/org-version /home/john/.emacs.d/straight/build/org/org-timer hides /usr/local/share/emacs/30.1.90/lisp/org/org-timer /home/john/.emacs.d/straight/build/org/org-tempo hides /usr/local/share/emacs/30.1.90/lisp/org/org-tempo /home/john/.emacs.d/straight/build/org/org-table hides /usr/local/share/emacs/30.1.90/lisp/org/org-table /home/john/.emacs.d/straight/build/org/org-src hides /usr/local/share/emacs/30.1.90/lisp/org/org-src /home/john/.emacs.d/straight/build/org/org-refile hides /usr/local/share/emacs/30.1.90/lisp/org/org-refile /home/john/.emacs.d/straight/build/org/org-protocol hides /usr/local/share/emacs/30.1.90/lisp/org/org-protocol /home/john/.emacs.d/straight/build/org/org-plot hides /usr/local/share/emacs/30.1.90/lisp/org/org-plot /home/john/.emacs.d/straight/build/org/org-persist hides /usr/local/share/emacs/30.1.90/lisp/org/org-persist /home/john/.emacs.d/straight/build/org/org-pcomplete hides /usr/local/share/emacs/30.1.90/lisp/org/org-pcomplete /home/john/.emacs.d/straight/build/org/org-num hides /usr/local/share/emacs/30.1.90/lisp/org/org-num /home/john/.emacs.d/straight/build/org/org-mouse hides /usr/local/share/emacs/30.1.90/lisp/org/org-mouse /home/john/.emacs.d/straight/build/org/org-mobile hides /usr/local/share/emacs/30.1.90/lisp/org/org-mobile /home/john/.emacs.d/straight/build/org/org-macs hides /usr/local/share/emacs/30.1.90/lisp/org/org-macs /home/john/.emacs.d/straight/build/org/org-macro hides /usr/local/share/emacs/30.1.90/lisp/org/org-macro /home/john/.emacs.d/straight/build/org/org-loaddefs hides /usr/local/share/emacs/30.1.90/lisp/org/org-loaddefs /home/john/.emacs.d/straight/build/org/org-list hides /usr/local/share/emacs/30.1.90/lisp/org/org-list /home/john/.emacs.d/straight/build/org/org-lint hides /usr/local/share/emacs/30.1.90/lisp/org/org-lint /home/john/.emacs.d/straight/build/org/org-keys hides /usr/local/share/emacs/30.1.90/lisp/org/org-keys /home/john/.emacs.d/straight/build/org/org-inlinetask hides /usr/local/share/emacs/30.1.90/lisp/org/org-inlinetask /home/john/.emacs.d/straight/build/org/org-indent hides /usr/local/share/emacs/30.1.90/lisp/org/org-indent /home/john/.emacs.d/straight/build/org/org-id hides /usr/local/share/emacs/30.1.90/lisp/org/org-id /home/john/.emacs.d/straight/build/org/org-habit hides /usr/local/share/emacs/30.1.90/lisp/org/org-habit /home/john/.emacs.d/straight/build/org/org-goto hides /usr/local/share/emacs/30.1.90/lisp/org/org-goto /home/john/.emacs.d/straight/build/org/org-footnote hides /usr/local/share/emacs/30.1.90/lisp/org/org-footnote /home/john/.emacs.d/straight/build/org/org-fold hides /usr/local/share/emacs/30.1.90/lisp/org/org-fold /home/john/.emacs.d/straight/build/org/org-fold-core hides /usr/local/share/emacs/30.1.90/lisp/org/org-fold-core /home/john/.emacs.d/straight/build/org/org-feed hides /usr/local/share/emacs/30.1.90/lisp/org/org-feed /home/john/.emacs.d/straight/build/org/org-faces hides /usr/local/share/emacs/30.1.90/lisp/org/org-faces /home/john/.emacs.d/straight/build/org/org-entities hides /usr/local/share/emacs/30.1.90/lisp/org/org-entities /home/john/.emacs.d/straight/build/org/org-element hides /usr/local/share/emacs/30.1.90/lisp/org/org-element /home/john/.emacs.d/straight/build/org/org-element-ast hides /usr/local/share/emacs/30.1.90/lisp/org/org-element-ast /home/john/.emacs.d/straight/build/org/org-duration hides /usr/local/share/emacs/30.1.90/lisp/org/org-duration /home/john/.emacs.d/straight/build/org/org-datetree hides /usr/local/share/emacs/30.1.90/lisp/org/org-datetree /home/john/.emacs.d/straight/build/org/org-cycle hides /usr/local/share/emacs/30.1.90/lisp/org/org-cycle /home/john/.emacs.d/straight/build/org/org-ctags hides /usr/local/share/emacs/30.1.90/lisp/org/org-ctags /home/john/.emacs.d/straight/build/org/org-crypt hides /usr/local/share/emacs/30.1.90/lisp/org/org-crypt /home/john/.emacs.d/straight/build/org/org-compat hides /usr/local/share/emacs/30.1.90/lisp/org/org-compat /home/john/.emacs.d/straight/build/org/org-colview hides /usr/local/share/emacs/30.1.90/lisp/org/org-colview /home/john/.emacs.d/straight/build/org/org-clock hides /usr/local/share/emacs/30.1.90/lisp/org/org-clock /home/john/.emacs.d/straight/build/org/org-capture hides /usr/local/share/emacs/30.1.90/lisp/org/org-capture /home/john/.emacs.d/straight/build/org/org-attach hides /usr/local/share/emacs/30.1.90/lisp/org/org-attach /home/john/.emacs.d/straight/build/org/org-attach-git hides /usr/local/share/emacs/30.1.90/lisp/org/org-attach-git /home/john/.emacs.d/straight/build/org/org-archive hides /usr/local/share/emacs/30.1.90/lisp/org/org-archive /home/john/.emacs.d/straight/build/org/org-agenda hides /usr/local/share/emacs/30.1.90/lisp/org/org-agenda /home/john/.emacs.d/straight/build/org/ol hides /usr/local/share/emacs/30.1.90/lisp/org/ol /home/john/.emacs.d/straight/build/org/ol-w3m hides /usr/local/share/emacs/30.1.90/lisp/org/ol-w3m /home/john/.emacs.d/straight/build/org/ol-rmail hides /usr/local/share/emacs/30.1.90/lisp/org/ol-rmail /home/john/.emacs.d/straight/build/org/ol-mhe hides /usr/local/share/emacs/30.1.90/lisp/org/ol-mhe /home/john/.emacs.d/straight/build/org/ol-man hides /usr/local/share/emacs/30.1.90/lisp/org/ol-man /home/john/.emacs.d/straight/build/org/ol-irc hides /usr/local/share/emacs/30.1.90/lisp/org/ol-irc /home/john/.emacs.d/straight/build/org/ol-info hides /usr/local/share/emacs/30.1.90/lisp/org/ol-info /home/john/.emacs.d/straight/build/org/ol-gnus hides /usr/local/share/emacs/30.1.90/lisp/org/ol-gnus /home/john/.emacs.d/straight/build/org/ol-eww hides /usr/local/share/emacs/30.1.90/lisp/org/ol-eww /home/john/.emacs.d/straight/build/org/ol-eshell hides /usr/local/share/emacs/30.1.90/lisp/org/ol-eshell /home/john/.emacs.d/straight/build/org/ol-doi hides /usr/local/share/emacs/30.1.90/lisp/org/ol-doi /home/john/.emacs.d/straight/build/org/ol-docview hides /usr/local/share/emacs/30.1.90/lisp/org/ol-docview /home/john/.emacs.d/straight/build/org/ol-bibtex hides /usr/local/share/emacs/30.1.90/lisp/org/ol-bibtex /home/john/.emacs.d/straight/build/org/ol-bbdb hides /usr/local/share/emacs/30.1.90/lisp/org/ol-bbdb /home/john/.emacs.d/straight/build/org/oc hides /usr/local/share/emacs/30.1.90/lisp/org/oc /home/john/.emacs.d/straight/build/org/oc-natbib hides /usr/local/share/emacs/30.1.90/lisp/org/oc-natbib /home/john/.emacs.d/straight/build/org/oc-csl hides /usr/local/share/emacs/30.1.90/lisp/org/oc-csl /home/john/.emacs.d/straight/build/org/oc-bibtex hides /usr/local/share/emacs/30.1.90/lisp/org/oc-bibtex /home/john/.emacs.d/straight/build/org/oc-biblatex hides /usr/local/share/emacs/30.1.90/lisp/org/oc-biblatex /home/john/.emacs.d/straight/build/org/oc-basic hides /usr/local/share/emacs/30.1.90/lisp/org/oc-basic /home/john/.emacs.d/straight/build/org/ob hides /usr/local/share/emacs/30.1.90/lisp/org/ob /home/john/.emacs.d/straight/build/org/ob-tangle hides /usr/local/share/emacs/30.1.90/lisp/org/ob-tangle /home/john/.emacs.d/straight/build/org/ob-table hides /usr/local/share/emacs/30.1.90/lisp/org/ob-table /home/john/.emacs.d/straight/build/org/ob-sqlite hides /usr/local/share/emacs/30.1.90/lisp/org/ob-sqlite /home/john/.emacs.d/straight/build/org/ob-sql hides /usr/local/share/emacs/30.1.90/lisp/org/ob-sql /home/john/.emacs.d/straight/build/org/ob-shell hides /usr/local/share/emacs/30.1.90/lisp/org/ob-shell /home/john/.emacs.d/straight/build/org/ob-sed hides /usr/local/share/emacs/30.1.90/lisp/org/ob-sed /home/john/.emacs.d/straight/build/org/ob-screen hides /usr/local/share/emacs/30.1.90/lisp/org/ob-screen /home/john/.emacs.d/straight/build/org/ob-scheme hides /usr/local/share/emacs/30.1.90/lisp/org/ob-scheme /home/john/.emacs.d/straight/build/org/ob-sass hides /usr/local/share/emacs/30.1.90/lisp/org/ob-sass /home/john/.emacs.d/straight/build/org/ob-ruby hides /usr/local/share/emacs/30.1.90/lisp/org/ob-ruby /home/john/.emacs.d/straight/build/org/ob-ref hides /usr/local/share/emacs/30.1.90/lisp/org/ob-ref /home/john/.emacs.d/straight/build/org/ob-R hides /usr/local/share/emacs/30.1.90/lisp/org/ob-R /home/john/.emacs.d/straight/build/org/ob-python hides /usr/local/share/emacs/30.1.90/lisp/org/ob-python /home/john/.emacs.d/straight/build/org/ob-processing hides /usr/local/share/emacs/30.1.90/lisp/org/ob-processing /home/john/.emacs.d/straight/build/org/ob-plantuml hides /usr/local/share/emacs/30.1.90/lisp/org/ob-plantuml /home/john/.emacs.d/straight/build/org/ob-perl hides /usr/local/share/emacs/30.1.90/lisp/org/ob-perl /home/john/.emacs.d/straight/build/org/ob-org hides /usr/local/share/emacs/30.1.90/lisp/org/ob-org /home/john/.emacs.d/straight/build/org/ob-octave hides /usr/local/share/emacs/30.1.90/lisp/org/ob-octave /home/john/.emacs.d/straight/build/org/ob-ocaml hides /usr/local/share/emacs/30.1.90/lisp/org/ob-ocaml /home/john/.emacs.d/straight/build/org/ob-maxima hides /usr/local/share/emacs/30.1.90/lisp/org/ob-maxima /home/john/.emacs.d/straight/build/org/ob-matlab hides /usr/local/share/emacs/30.1.90/lisp/org/ob-matlab /home/john/.emacs.d/straight/build/org/ob-makefile hides /usr/local/share/emacs/30.1.90/lisp/org/ob-makefile /home/john/.emacs.d/straight/build/org/ob-lua hides /usr/local/share/emacs/30.1.90/lisp/org/ob-lua /home/john/.emacs.d/straight/build/org/ob-lob hides /usr/local/share/emacs/30.1.90/lisp/org/ob-lob /home/john/.emacs.d/straight/build/org/ob-lisp hides /usr/local/share/emacs/30.1.90/lisp/org/ob-lisp /home/john/.emacs.d/straight/build/org/ob-lilypond hides /usr/local/share/emacs/30.1.90/lisp/org/ob-lilypond /home/john/.emacs.d/straight/build/org/ob-latex hides /usr/local/share/emacs/30.1.90/lisp/org/ob-latex /home/john/.emacs.d/straight/build/org/ob-julia hides /usr/local/share/emacs/30.1.90/lisp/org/ob-julia /home/john/.emacs.d/straight/build/org/ob-js hides /usr/local/share/emacs/30.1.90/lisp/org/ob-js /home/john/.emacs.d/straight/build/org/ob-java hides /usr/local/share/emacs/30.1.90/lisp/org/ob-java /home/john/.emacs.d/straight/build/org/ob-haskell hides /usr/local/share/emacs/30.1.90/lisp/org/ob-haskell /home/john/.emacs.d/straight/build/org/ob-groovy hides /usr/local/share/emacs/30.1.90/lisp/org/ob-groovy /home/john/.emacs.d/straight/build/org/ob-gnuplot hides /usr/local/share/emacs/30.1.90/lisp/org/ob-gnuplot /home/john/.emacs.d/straight/build/org/ob-fortran hides /usr/local/share/emacs/30.1.90/lisp/org/ob-fortran /home/john/.emacs.d/straight/build/org/ob-forth hides /usr/local/share/emacs/30.1.90/lisp/org/ob-forth /home/john/.emacs.d/straight/build/org/ob-exp hides /usr/local/share/emacs/30.1.90/lisp/org/ob-exp /home/john/.emacs.d/straight/build/org/ob-eval hides /usr/local/share/emacs/30.1.90/lisp/org/ob-eval /home/john/.emacs.d/straight/build/org/ob-eshell hides /usr/local/share/emacs/30.1.90/lisp/org/ob-eshell /home/john/.emacs.d/straight/build/org/ob-emacs-lisp hides /usr/local/share/emacs/30.1.90/lisp/org/ob-emacs-lisp /home/john/.emacs.d/straight/build/org/ob-dot hides /usr/local/share/emacs/30.1.90/lisp/org/ob-dot /home/john/.emacs.d/straight/build/org/ob-ditaa hides /usr/local/share/emacs/30.1.90/lisp/org/ob-ditaa /home/john/.emacs.d/straight/build/org/ob-css hides /usr/local/share/emacs/30.1.90/lisp/org/ob-css /home/john/.emacs.d/straight/build/org/ob-core hides /usr/local/share/emacs/30.1.90/lisp/org/ob-core /home/john/.emacs.d/straight/build/org/ob-comint hides /usr/local/share/emacs/30.1.90/lisp/org/ob-comint /home/john/.emacs.d/straight/build/org/ob-clojure hides /usr/local/share/emacs/30.1.90/lisp/org/ob-clojure /home/john/.emacs.d/straight/build/org/ob-calc hides /usr/local/share/emacs/30.1.90/lisp/org/ob-calc /home/john/.emacs.d/straight/build/org/ob-C hides /usr/local/share/emacs/30.1.90/lisp/org/ob-C /home/john/.emacs.d/straight/build/org/ob-awk hides /usr/local/share/emacs/30.1.90/lisp/org/ob-awk /home/john/.emacs.d/straight/build/seq/seq hides /usr/local/share/emacs/30.1.90/lisp/emacs-lisp/seq /home/john/.emacs.d/straight/build/map/map hides /usr/local/share/emacs/30.1.90/lisp/emacs-lisp/map /home/john/.emacs.d/straight/build/let-alist/let-alist hides /usr/local/share/emacs/30.1.90/lisp/emacs-lisp/let-alist /home/john/.emacs.d/straight/build/compat/compat hides /usr/local/share/emacs/30.1.90/lisp/emacs-lisp/compat Features: (shadow sort mail-extr emacsbug scroll-lock tramp-cmds move-text vc-hg vc-bzr vc-src vc-sccs vc-svn vc-cvs vc-rcs log-view vc bug-reference jinx crux goto-chg info-variable-pitch jka-compr helpful cc-langs trace info-look elisp-refs cl-print goto-addr git-identity f s magit-bookmark magit-submodule 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 package url-handlers magit-repos magit-apply magit-wip magit-log which-func magit-diff git-commit log-edit message sendmail yank-media puny dired dired-loaddefs rfc822 mml mml-sec epa derived epg rfc6068 epg-config gnus-util mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 mm-util ietf-drums mail-prsvr mailabbrev mail-utils gmm-utils mailheader pcvs-util add-log magit-core magit-autorevert magit-margin magit-transient magit-process with-editor magit-mode transient benchmark magit-git magit-base magit-section crm llama skeleton org-protocol org-capture org-agenda org-element org-persist org-id avl-tree org-refile eat term/xterm xterm term disp-table ehelp eshell esh-cmd esh-ext esh-opt esh-proc esh-io esh-arg esh-module esh-module-loaddefs esh-util undo-tree queue whitespace elec-pair electric-operator dash cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs imenu ess-r-mode ess-r-flymake flymake ess-r-xref ess-trns ess-r-package ess-r-completion ess-roxy ess-r-syntax ess-rd hideshow ess-s-lang ess-help ess-mode ess-inf ess-tracebug comp comp-cstr comp-run comp-common tramp trampver tramp-integration files-x tramp-message tramp-compat xdg shell parse-time iso8601 tramp-loaddefs ess lisp-mnt ess-utils ess-custom compile vertico-directory mule-util vertico-repeat cursor-sensor vc-git vc-dispatcher consult lispy hydra lv delsel lispy-inline avy etags fileloop generator xref project edebug debug backtrace help-fns radix-tree lispy-tags mode-local zoutline org ob ob-tangle ob-ref ob-lob ob-table ob-exp org-macro org-src sh-script smie treesit executable ob-comint org-element-ast inline org-pcomplete pcomplete comint ansi-osc ansi-color ring org-list org-footnote org-faces org-entities time-date ob-emacs-lisp ob-core ob-eval org-cycle org-table ol org-fold org-fold-core org-keys oc org-loaddefs thingatpt find-func org-version org-compat org-macs paredit-everywhere paredit outli noutline outline olivetti face-remap pcase cus-start autorevert filenotify saveplace savehist aggressive-indent init super-save super-save-autoloads goto-chg-autoloads rainbow-mode-autoloads pandoc-mode-autoloads edit-indirect-autoloads gptel-autoloads unfill-autoloads olivetti-autoloads multiple-cursors-autoloads wgrep-autoloads sudo-edit-autoloads eat-autoloads info-variable-pitch-autoloads aggressive-indent-autoloads ahk-mode-autoloads citar-autoloads citeproc-autoloads string-inflection-autoloads parsebib-autoloads pdf-tools-autoloads let-alist-autoloads tablist-autoloads auctex-autoloads tex-site quarto-mode-autoloads request-autoloads poly-markdown-autoloads polymode-autoloads markdown-mode-autoloads smerge-mode diff-mode track-changes diff git-identity-autoloads magit-autoloads with-editor-autoloads magit-section-autoloads llama-autoloads undo-tree-autoloads cape cape-autoloads corfu-prescient corfu-prescient-autoloads corfu corfu-autoloads org-download-autoloads async-autoloads server org-sidebar-autoloads org-ql-autoloads peg-autoloads ov-autoloads adaptive-wrap-autoloads org-super-agenda-autoloads ts-autoloads ht-autoloads slime-autoloads macrostep-autoloads cider-autoloads transient-autoloads sesman-autoloads spinner-autoloads queue-autoloads parseedn-autoloads map-autoloads parseclj-autoloads clojure-mode-autoloads racket-mode-autoloads outli-autoloads morlock-autoloads helpful-autoloads elisp-refs-autoloads f-autoloads s-autoloads stan-mode-autoloads electric-operator-autoloads dash-autoloads ess-autoloads embark-consult-autoloads consult-autoloads embark-autoloads marginalia marginalia-autoloads orderless orderless-autoloads vertico-multiform vertico-suspend vertico-mouse vertico-prescient vertico-prescient-autoloads prescient char-fold prescient-autoloads vertico vertico-autoloads move-text-autoloads crux-autoloads engine-mode format-spec engine-mode-autoloads flyspell-correct-autoloads jinx-autoloads recentf tree-widget rx advice hungry-delete hungry-delete-autoloads minions minions-autoloads spacious-padding spacious-padding-autoloads modus-operandi-theme modus-themes modus-themes-autoloads paredit-everywhere-autoloads paredit-autoloads lispy-autoloads zoutline-autoloads hydra-autoloads lv-autoloads swiper-autoloads ivy-autoloads iedit-autoloads expreg-autoloads ultra-scroll-autoloads cal-menu calendar cal-loaddefs activities-tabs activities color persist bookmark text-property-search activities-autoloads persist-autoloads ace-window-autoloads avy-autoloads finder-inf popper popper-autoloads no-littering compat no-littering-autoloads compat-autoloads info seq-autoloads straight-autoloads straight repeat edmacro kmacro use-package-bind-key bind-key easy-mmode defuns browse-url url url-proxy url-privacy url-expand url-methods url-history url-cookie generate-lisp-file url-domsuf url-util url-parse auth-source eieio eieio-core password-cache json subr-x map byte-opt url-vars mailcap warnings cus-edit pp cus-load icons wid-edit use-package-ensure cl-extra help-mode cl-seq use-package-core bytecomp byte-compile cl-macs gv cl-loaddefs cl-lib early-init rmc iso-transl tooltip cconv eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel term/x-win x-win term/common-win x-dnd touch-screen tool-bar dnd fontset image regexp-opt fringe tabulated-list replace newcomment text-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow isearch easymenu timer select scroll-bar mouse jit-lock font-lock syntax font-core term/tty-colors frame minibuffer nadvice seq simple cl-generic indonesian philippine 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 emoji-zwj charscript charprop case-table epa-hook jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddefs theme-loaddefs faces cus-face macroexp files window text-properties overlay sha1 md5 base64 format env code-pages mule custom widget keymap hashtable-print-readable backquote threads dbusbind inotify lcms2 dynamic-setting system-font-setting font-render-setting cairo x-toolkit xinput2 x multi-tty move-toolbar make-network-process native-compile emacs) Memory information: ((conses 16 897147 1073303) (symbols 48 82710 48) (strings 32 220777 31687) (string-bytes 1 7643162) (vectors 16 87334) (vector-slots 8 1828330 301788) (floats 8 1082 10419) (intervals 56 57294 11327) (buffers 992 36))
[Message part 3 (message/rfc822, inline)]
From: Eli Zaretskii <eliz <at> gnu.org> To: "John Haman" <mail <at> johnhaman.org> Cc: 79022-done <at> debbugs.gnu.org Subject: Re: bug#79022: 30.1.90; Shift-select-mode does not appear to work when scroll-lock-mode is enabled Date: Tue, 15 Jul 2025 16:24:30 +0300> Date: Tue, 15 Jul 2025 08:52:45 -0400 > From: "John Haman" <mail <at> johnhaman.org> > Cc: 79022 <at> debbugs.gnu.org > > Yep, that patch resolves the bug completely! Thanks, now installed on the master branch, and closing the bug. > -- > John T. Haman > mail <at> johnhaman.org > > On Tue, Jul 15, 2025, at 7:45 AM, Eli Zaretskii wrote: > >> Date: Mon, 14 Jul 2025 15:54:13 -0400 > >> From: "John Haman" <mail <at> johnhaman.org> > >> > >> In short, I believe there is a bad interaction between scroll-lock-mode > >> and shift-select-mode that prevent shift-select mode from working as > >> intended when scroll-lock-mode is active. > >> > >> 1. Emacs -Q > >> 2. Open a text file. > >> 3. Enable scroll-lock-mode > >> 4. Try to highlight some text using C-S-n or C-S-<down>. I expected it > >> to be selected, but it is not. > > > > Thanks. Does the patch below fix this problem without introducing new > > problems? > > > > diff --git a/lisp/scroll-lock.el b/lisp/scroll-lock.el > > index 6b99e29..7689ca8 100644 > > --- a/lisp/scroll-lock.el > > +++ b/lisp/scroll-lock.el > > @@ -84,7 +84,7 @@ scroll-lock-move-to-column > > > > (defun scroll-lock-next-line-always-scroll (&optional arg) > > "Scroll up ARG lines keeping point fixed." > > - (interactive "p") > > + (interactive "^p") > > (or arg (setq arg 1)) > > (scroll-lock-update-goal-column) > > (condition-case nil > > @@ -94,7 +94,7 @@ scroll-lock-next-line-always-scroll > > > > (defun scroll-lock-next-line (&optional arg) > > "Scroll up ARG lines keeping point fixed." > > - (interactive "p") > > + (interactive "^p") > > (or arg (setq arg 1)) > > (scroll-lock-update-goal-column) > > (if (pos-visible-in-window-p (point-max)) > > @@ -104,7 +104,7 @@ scroll-lock-next-line > > > > (defun scroll-lock-previous-line (&optional arg) > > "Scroll up ARG lines keeping point fixed." > > - (interactive "p") > > + (interactive "^p") > > (or arg (setq arg 1)) > > (scroll-lock-update-goal-column) > > (condition-case nil > > @@ -114,7 +114,7 @@ scroll-lock-previous-line > > > > (defun scroll-lock-forward-paragraph (&optional arg) > > "Scroll down ARG paragraphs keeping point fixed." > > - (interactive "p") > > + (interactive "^p") > > (or arg (setq arg 1)) > > (scroll-lock-update-goal-column) > > (scroll-up (count-screen-lines (point) (save-excursion > > @@ -124,7 +124,7 @@ scroll-lock-forward-paragraph > > > > (defun scroll-lock-backward-paragraph (&optional arg) > > "Scroll up ARG paragraphs keeping point fixed." > > - (interactive "p") > > + (interactive "^p") > > (or arg (setq arg 1)) > > (scroll-lock-update-goal-column) > > (let ((goal (save-excursion (backward-paragraph arg) (point)))) >
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.