diff options
| -rw-r--r-- | lisp/pdf-view.el | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/lisp/pdf-view.el b/lisp/pdf-view.el index dc77368..c94fe1a 100644 --- a/lisp/pdf-view.el +++ b/lisp/pdf-view.el @@ -213,6 +213,16 @@ Must be one of `glyph', `word', or `line'." (const word) (const line))) +(defcustom pdf-view-mode-line-position-prefix "P" + "Prefix for page number shown in the mode line." + :group 'pdf-view + :type 'string) + +(defcustom pdf-view-mode-line-position-use-labels nil + "Whether current page should come from page labels." + :group 'pdf-view + :type 'boolean) + ;; * ================================================================== * ;; * Internal variables and macros @@ -390,7 +400,13 @@ PNG images in Emacs buffers." ;; Setup other local variables. (setq-local mode-line-position - '(" P" (:eval (number-to-string (pdf-view-current-page))) + '(" " pdf-view-mode-line-position-prefix + ;; Show page label when enabled and available, + ;; otherwise show numeric page. Guard against errors. + (:eval + (or (and pdf-view-mode-line-position-use-labels + (ignore-errors (pdf-view-current-pagelabel))) + (number-to-string (pdf-view-current-page)))) ;; Avoid errors during redisplay. "/" (:eval (or (ignore-errors (number-to-string (pdf-cache-number-of-pages))) |
