Subject: bug#72275: closed (Re: bug#72275: 30.0.60; [PATCH] Fix jumping to page in DocView's text contents)

From: [email-masked] (GNU bug Tracking System)
Date: Thu, 25 Jul 2024 06:52:02 +0000

Your bug report

#72275: 30.0.60; [PATCH] Fix jumping to page in DocView's text contents

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
72275: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=72275
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#72275: 30.0.60; [PATCH] Fix jumping to page in DocView's text contents
From: Tassilo Horn <[email-masked]>
To: Manuel Giraud <[email-masked]>, [email-masked]
Date: Thu, 25 Jul 2024 08:51:34 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

Manuel Giraud <[email-masked]> writes:

> Poppler's "pdftotext" does not seem to enforce page delimiter at the
> first column.  For instance, I have documents translated with
> "pdftotext" that skips the first three page starting with "".
>
> In such case, using `page-delimiter' (which defaults to "^") to jump
> to the text contents page does not work as expected.  This patch fixes
> this issue.

Hm, it looks like that was wrong from the beginning when Lars added that
in commit c1c9af312ed3 in 2019.  page-delimiter never had a different
default value and pdftotext always used just ^L (FORM FEED)...

Looking at what other modes do, I've set page-delimiter buffer-locally
to the form feed character in the new text contents buffer now, i.e.,
it's only fixed on master which I think is ok given that nobody except
you found the issue in the last 5 years.

Bye,
  Tassilo

Subject: 30.0.60; [PATCH] Fix jumping to page in DocView's text contents
From: Manuel Giraud <[email-masked]>
To: [email-masked]
Cc: Tassilo Horn <[email-masked]>
Date: Wed, 24 Jul 2024 15:33:15 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

Hi,

Poppler's "pdftotext" does not seem to enforce page delimiter at the
first column.  For instance, I have documents translated with
"pdftotext" that skips the first three page starting with "".

In such case, using `page-delimiter' (which defaults to "^") to jump
to the text contents page does not work as expected.  This patch fixes
this issue.
>From e22d7dd15c8762214bfe4dbc504fe8e8dce90c46 Mon Sep 17 00:00:00 2001
From: Manuel Giraud <[email-masked]>
Date: Wed, 24 Jul 2024 15:18:30 +0200
Subject: [PATCH] Fix jumping to page in DocView's text contents

* lisp/doc-view.el (doc-view-open-text): Replace
`page-delimiter' with a plain Control-L.
---
 lisp/doc-view.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lisp/doc-view.el b/lisp/doc-view.el
index e7d7ed4a862..19fd8901867 100644
--- a/lisp/doc-view.el
+++ b/lisp/doc-view.el
@@ -1782,7 +1782,7 @@ doc-view-open-text
             (goto-char (point-min))
             ;; Put point at the start of the page the user was
             ;; reading.  Pages are separated by Control-L characters.
-            (re-search-forward page-delimiter nil t (1- page))
+            (re-search-forward "" nil t (1- page))
 	    (add-hook 'write-file-functions
 		      (lambda ()
                         ;; FIXME: If the user changes major mode and then
-- 
2.45.2

In GNU Emacs 30.0.60 (build 2, x86_64-unknown-openbsd7.5) of 2024-07-24
 built on computer
Repository revision: 23549d7175108ca632375f9cc4390ff3e53e4d1e
Repository branch: mgi/doc-view-ctrl-l
Windowing system distributor 'The X.Org Foundation', version 11.0.12101013
System Description: OpenBSD computer 7.5 GENERIC.MP#198 amd64

Configured using:
 'configure CC=egcc CPPFLAGS=-I/usr/local/include
 LDFLAGS=-L/usr/local/lib MAKEINFO=gmakeinfo --prefix=/home/manuel/emacs
 --bindir=/home/manuel/bin --with-x-toolkit=no --without-cairo
 --without-compress-install'

Configured features:
DBUS FREETYPE GIF GLIB GMP GNUTLS GSETTINGS HARFBUZZ JPEG LCMS2 LIBOTF
LIBXML2 MODULES NOTIFY KQUEUE OLDXMENU PDUMPER PNG RSVG SQLITE3 THREADS
TIFF TREE_SITTER WEBP X11 XDBE XFT XIM XINPUT2 XPM ZLIB

Important settings:
  value of $LC_CTYPE: en_US.UTF-8
  locale-coding-system: utf-8-unix

Major mode: Dired by name

Minor modes in effect:
  pdf-occur-dired-minor-mode: t
  gnus-dired-mode: t
  display-time-mode: t
  display-battery-mode: t
  desktop-save-mode: t
  exwm-randr-mode: t
  server-mode: t
  electric-pair-mode: t
  override-global-mode: t
  repeat-mode: t
  global-eldoc-mode: t
  show-paren-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  minibuffer-regexp-mode: t
  buffer-read-only: t
  line-number-mode: t
  indent-tabs-mode: t
  transient-mark-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t

Load-path shadows:
/home/manuel/prog/elisp/exwm/exwm-randr hides /home/manuel/.emacs.d/elpa/exwm-0.31/exwm-randr
/home/manuel/prog/elisp/exwm/exwm hides /home/manuel/.emacs.d/elpa/exwm-0.31/exwm
/home/manuel/prog/elisp/exwm/exwm-xsettings hides /home/manuel/.emacs.d/elpa/exwm-0.31/exwm-xsettings
/home/manuel/prog/elisp/exwm/exwm-xim hides /home/manuel/.emacs.d/elpa/exwm-0.31/exwm-xim
/home/manuel/prog/elisp/exwm/exwm-workspace hides /home/manuel/.emacs.d/elpa/exwm-0.31/exwm-workspace
/home/manuel/prog/elisp/exwm/exwm-systemtray hides /home/manuel/.emacs.d/elpa/exwm-0.31/exwm-systemtray
/home/manuel/prog/elisp/exwm/exwm-manage hides /home/manuel/.emacs.d/elpa/exwm-0.31/exwm-manage
/home/manuel/prog/elisp/exwm/exwm-layout hides /home/manuel/.emacs.d/elpa/exwm-0.31/exwm-layout
/home/manuel/prog/elisp/exwm/exwm-input hides /home/manuel/.emacs.d/elpa/exwm-0.31/exwm-input
/home/manuel/prog/elisp/exwm/exwm-floating hides /home/manuel/.emacs.d/elpa/exwm-0.31/exwm-floating
/home/manuel/prog/elisp/exwm/exwm-core hides /home/manuel/.emacs.d/elpa/exwm-0.31/exwm-core
/home/manuel/prog/elisp/exwm/exwm-config hides /home/manuel/.emacs.d/elpa/exwm-0.31/exwm-config
/home/manuel/prog/elisp/exwm/exwm-background hides /home/manuel/.emacs.d/elpa/exwm-0.31/exwm-background
/home/manuel/.emacs.d/elpa/ef-themes-1.7.0/theme-loaddefs hides /home/manuel/emacs/share/emacs/30.0.60/lisp/theme-loaddefs

Features:
(shadow sort mail-extr misearch multi-isearch vc-hg vc-bzr vc-src
vc-sccs vc-svn emacsbug log-edit pulse dabbrev add-log smerge-mode diff
whitespace display-line-numbers org-indent org-agenda texinfo
texinfo-loaddefs view flymake-cc flymake python conf-mode vc-cvs vc-rcs
log-view pcvs-util make-mode oc-basic org-element org-persist org-id
org-element-ast inline avl-tree ol-eww eww url-queue mm-url ol-rmail
ol-mhe ol-irc ol-info ol-gnus nnselect ol-docview doc-view filenotify
ol-bibtex bibtex ol-bbdb ol-w3m ol-doi org-link-doi gnus-icalendar
org-capture org-refile org ob ob-tangle ob-ref ob-lob ob-table ob-exp
org-macro org-src ob-comint org-pcomplete org-list org-footnote
org-faces org-entities org-version ob-emacs-lisp ob-core ob-eval
org-cycle org-table ol org-fold org-fold-core org-keys oc org-loaddefs
org-compat org-macs emacs-news-mode mule-util on-screen gud sh-script
smie treesit executable 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 cus-edit cus-start pdf-view bookmark
jka-compr pdf-cache pdf-info tq pdf-util pdf-macs image-mode exif
gnus-dired vc-dir ewoc vc vc-git diff-mode track-changes vc-dispatcher
bug-reference time battery cus-load desktop frameset exwm-randr
xcb-randr exwm exwm-input xcb-keysyms xcb-xkb exwm-manage exwm-floating
xcb-cursor xcb-render exwm-layout exwm-workspace exwm-core xcb-ewmh
xcb-icccm xcb xcb-xproto xcb-types xcb-debug server ef-kassio-theme
ef-themes modus-operandi-theme modus-themes zone speed-type url-http
url-auth url-gw nsm ytdious mpdired transmission color calc-bin calc-ext
calc calc-loaddefs rect calc-macs supercite regi ebdb-gnus gnus-msg
gnus-art mm-uu mml2015 mm-view mml-smime smime gnutls dig gnus-sum shr
pixel-fill kinsoku url-file svg dom gnus-group gnus-undo gnus-start
gnus-dbus dbus xml gnus-cloud nnimap nnmail mail-source utf7 nnoo
gnus-spec gnus-int gnus-range gnus-win ebdb-message message sendmail
yank-media puny rfc822 mml mml-sec epa epg rfc6068 epg-config mm-decode
mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 ietf-drums
gmm-utils mailheader ebdb-mua ebdb-com crm ebdb-format ebdb mailabbrev
eieio-opt speedbar ezimage dframe find-func eieio-base timezone
icalendar gnus nnheader gnus-util mail-utils range mm-util mail-prsvr
wid-edit web-mode derived disp-table erlang-start skeleton cc-mode
cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars
cc-defs slime-asdf grep slime-tramp tramp rx trampver tramp-integration
files-x tramp-message tramp-compat warnings xdg shell pcomplete
parse-time iso8601 time-date format-spec tramp-loaddefs slime-fancy
slime-indentation slime-cl-indent cl-indent slime-trace-dialog
slime-fontifying-fu slime-package-fu slime-references
slime-compiler-notes-tree advice slime-scratch slime-presentations
bridge slime-macrostep macrostep compat slime-mdot-fu
slime-enclosing-context slime-fuzzy slime-fancy-trace
slime-fancy-inspector slime-c-p-c slime-editing-commands slime-autodoc
slime-repl slime-parse slime apropos compile text-property-search etags
fileloop generator xref project arc-mode archive-mode noutline outline
pp comint ansi-osc ansi-color ring hyperspec thingatpt elec-pair edmacro
kmacro use-package-bind-key bind-key appt diary-lib diary-loaddefs
cal-menu calendar cal-loaddefs pcase dired-x dired-aux dired
dired-loaddefs use-package-core repeat easy-mmode calfw-autoloads
calfw-cal-autoloads calfw-org-autoloads debbugs-autoloads ebdb-autoloads
cl-extra help-mode ef-themes-autoloads exwm-autoloads
hyperbole-autoloads kotl-autoloads hact set hhist on-screen-autoloads
osm-autoloads pdf-tools-autoloads rust-mode-autoloads info
slime-autoloads macrostep-autoloads speed-type-autoloads
tablist-autoloads transmission-autoloads xelb-autoloads
ytdious-autoloads package browse-url url url-proxy url-privacy
url-expand url-methods url-history url-cookie generate-lisp-file
url-domsuf url-util mailcap url-handlers url-parse auth-source cl-seq
eieio eieio-core cl-macs icons password-cache json subr-x map byte-opt
gv bytecomp byte-compile url-vars cl-loaddefs cl-lib 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 kqueue lcms2 dynamic-setting system-font-setting
font-render-setting xinput2 x multi-tty move-toolbar
make-network-process emacs)

Memory information:
((conses 16 1025742 653219) (symbols 48 57496 2)
 (strings 32 260102 42117) (string-bytes 1 6536941)
 (vectors 16 159749) (vector-slots 8 2188364 86800) (floats 8 634 915)
 (intervals 56 43337 1512) (buffers 992 169))

-- 
Manuel Giraud