;ELC ;;; Compiled ;;; in Emacs version 28.0.50 ;;; with all optimizations. (byte-code "\301\302!\210\301\303!\210\301\304!\210\301\305!\210\301\306!\210\301\307!\210\301\310!\210\311\312\313\314\315\316%\210\317\320\321\322\323DD\324\325\326\315\312&\210\317\327\321\322\330DD\331\315\312\325\332&\210\317\333\321\322\334DD\335\315\312\325\336&\210\317\337\321\322\340DD\341\315\312\325\342&\210\317\343\321\322\344DD\345\315\312\325&\210\317\346\321\322\347DD\350\315\312\325\351&\207" [display-buffer--action-custom-type require outline pdf-links pdf-view pdf-util cl-lib imenu let-alist custom-declare-group pdf-outline nil "Display a navigatable outline of a PDF document." :group pdf-tools custom-declare-variable pdf-outline-buffer-indent funcall function #[0 "\300\207" [2] 1] "The level of indent in the Outline buffer." :type integer pdf-outline-enable-imenu #[0 "\300\207" [t] 1] "Whether `imenu' should be enabled in PDF documents." (choice (const :tag "Yes" t) (const :tag "No" nil)) pdf-outline-imenu-keep-order #[0 "\300\207" [t] 1] "Whether `imenu' should be advised not to reorder the outline." (choice (const :tag "Yes" t) (const :tag "No" nil)) pdf-outline-imenu-use-flat-menus #[0 "\300\207" [nil] 1] "Whether the constructed Imenu should be a list, rather than a tree." (choice (const :tag "Yes" t) (const :tag "No" nil)) pdf-outline-display-buffer-action #[0 "\300\207" [(nil)] 1] "The display action used, when displaying the outline buffer." pdf-outline-display-labels #[0 "\300\207" [nil] 1] "Whether the outline should display labels instead of page numbers.\n\nUsually a page's label is it's displayed page number." boolean] 8) #@43 Keymap used for `pdf-outline-minor-mode'. (defvar pdf-outline-minor-mode-map (byte-code "\300 \301\302\303#\210\207" [make-sparse-keymap define-key "o" pdf-outline] 5) (#$ . 1673)) #@43 Keymap used in `pdf-outline-buffer-mode'. (defvar pdf-outline-buffer-mode-map (byte-code "\300 \301\302\211W\203\211\303\304\305\\!\306#\266\211T\262\202\266\303\307\310#\210\303\311\312#\210\303\313\314#\210\303\315\316#\210\303\317\320#\210\303\321\322#\210\303\323\324#\210\303\325\326#\210\303\327\330#\210\303\331\332#\210\303\333\334#\210\303\335\336#\210\303\337\340#\210\303\341\342#\210\303\343\344#\210\303\345\344#\210\303\346\347#\210\303\350\351#\210\303\352\353#\210\303\354\355#\210\303\356\357#\210\303\360\361#\210\303\362\363#\210\207" [make-sparse-keymap 10 0 define-key vector 48 digit-argument "-" negative-argument "p" previous-line "n" next-line "b" outline-backward-same-level "d" hide-subtree "a" show-all "s" show-subtree "f" outline-forward-same-level "u" pdf-outline-up-heading "Q" hide-sublevels "<" beginning-of-buffer ">" pdf-outline-end-of-buffer " " outline-toggle-children " " pdf-outline-follow-link "" pdf-outline-display-link " " [mouse-1] pdf-outline-mouse-display-link "o" pdf-outline-select-pdf-window "." pdf-outline-move-to-current-page "" pdf-outline-quit-and-kill "q" quit-window [134217741] pdf-outline-follow-link-and-quit "" pdf-outline-follow-mode] 9) (#$ . 1861)) (define-button-type 'pdf-outline 'face nil 'keymap nil) #@54 The PDF window corresponding to this outline buffer. (defvar pdf-outline-pdf-window nil (#$ . 3174)) (make-variable-buffer-local 'pdf-outline-pdf-window) #@68 The PDF filename or buffer corresponding to this outline buffer. (defvar pdf-outline-pdf-document nil (#$ . 3334)) (make-variable-buffer-local 'pdf-outline-pdf-document) (defvar pdf-outline-follow-mode-last-link nil nil) (make-variable-buffer-local 'pdf-outline-follow-mode-last-link) #@113 Non-nil if Pdf-Outline minor mode is enabled. Use the command `pdf-outline-minor-mode' to change this variable. (defvar pdf-outline-minor-mode nil (#$ . 3628)) (make-variable-buffer-local 'pdf-outline-minor-mode) #@764 Display an outline of a PDF document. This is a minor mode. If called interactively, toggle the `Pdf-Outline minor mode' mode. If the prefix argument is positive, enable the mode, and if it is zero or negative, disable the mode. If called from Lisp, toggle the mode if ARG is `toggle'. Enable the mode if ARG is nil, omitted, or is a positive number. Disable the mode if ARG is a negative number. To check whether the minor mode is enabled in the current buffer, evaluate `pdf-outline-minor-mode'. The mode's hook is called both when the mode is enabled and when it is disabled. This provides a PDF's outline on the menu bar via imenu. Additionally the same outline may be viewed in a designated buffer. \{pdf-outline-minor-mode-map} (fn &optional ARG) (defalias 'pdf-outline-minor-mode #[256 "\303 \304=\203 ?\202\247\203\305W\203\306\202\307\310\301!\2031\311\300 \"\2031\300 B\312 \210\203B\n\203I\313 \210\202I\n\203I\314 \210\315\316\203S\317\202T\320\"\210\321\322!\203v\303 \203h\211\303 \232\203v\323\324\203r\325\202s\326\327#\210\210\330 \210\207" [pdf-outline-minor-mode local-minor-modes pdf-outline-enable-imenu current-message toggle 1 nil t boundp delq pdf-util-assert-pdf-buffer pdf-outline-imenu-enable pdf-outline-imenu-disable run-hooks pdf-outline-minor-mode-hook pdf-outline-minor-mode-on-hook pdf-outline-minor-mode-off-hook called-interactively-p any message "Pdf-Outline minor mode %sabled%s" "en" "dis" " in current buffer" force-mode-line-update] 6 (#$ . 3848) (byte-code "\203\n\301!\202 \302C\207" [current-prefix-arg prefix-numeric-value toggle] 2)]) (defvar pdf-outline-minor-mode-hook nil) (byte-code "\301\302N\204\f\303\301\302\304#\210\303\301\305\306#\210\303\301\307\310C#\210\311\312\310\313\300!\205#\310\211%\207" [pdf-outline-minor-mode-map pdf-outline-minor-mode-hook variable-documentation put "Hook run after entering or leaving `pdf-outline-minor-mode'.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it. (This is true for all hook variables.)" custom-type hook standard-value nil add-minor-mode pdf-outline-minor-mode boundp] 6) (defvar pdf-outline-buffer-mode-hook nil) (byte-code "\300\301N\204\f\302\300\301\303#\210\304\305!\204\302\305\306\307#\210\300\207" [pdf-outline-buffer-mode-hook variable-documentation put "Hook run after entering PDF Outline mode.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it. (This is true for all hook variables.)" boundp pdf-outline-buffer-mode-map definition-name pdf-outline-buffer-mode] 4) (defvar pdf-outline-buffer-mode-map (make-sparse-keymap)) (byte-code "\301\302N\204\303\301\302\304\305!#\210\306\307!\204\303\307\310\311#\210\312\313 !\210\307\302N\204-\303\307\302\304\314!#\210\306\300!\204B\303\300\310\311#\210\315\316\300\317\"\210!\210\300\302N\204P\303\300\302\304\320!#\210\303\311\321\322#\207" [pdf-outline-buffer-mode-abbrev-table pdf-outline-buffer-mode-map variable-documentation put purecopy "Keymap for `pdf-outline-buffer-mode'." boundp pdf-outline-buffer-mode-syntax-table definition-name pdf-outline-buffer-mode (lambda (def-tmp-var) (defvar pdf-outline-buffer-mode-syntax-table def-tmp-var)) make-syntax-table "Syntax table for `pdf-outline-buffer-mode'." (lambda (def-tmp-var) (defvar pdf-outline-buffer-mode-abbrev-table def-tmp-var)) define-abbrev-table nil "Abbrev table for `pdf-outline-buffer-mode'." derived-mode-parent outline-mode] 5) #@736 View and traverse the outline of a PDF file. Press \[pdf-outline-display-link] to display the PDF document, \[pdf-outline-select-pdf-window] to select it's window, \[pdf-outline-move-to-current-page] to move to the outline item of the current page, \[pdf-outline-follow-link] to goto the corresponding page or \[pdf-outline-follow-link-and-quit] to additionally quit the Outline. \[pdf-outline-follow-mode] enters a variant of `next-error-follow-mode'. Most `outline-mode' commands are rebound to their respective last character. \{pdf-outline-buffer-mode-map} In addition to any hooks its parent mode might have run, this mode runs the hook `pdf-outline-buffer-mode-hook', as the final or penultimate step during initialization. (defalias 'pdf-outline-buffer-mode #[0 "\306\300!\210\307\310 \210\311\312\310\313N\203\314\311\313\310\313N#\210\315 !\204'\316 \317 \"\210\320\f!\211\2035\211\321 =\203;\322\f\323 \"\210\210\324 \325\"\204R )=\204R\326 \325)C#\210\327 !\210\330\f!\210 )\306\331!\210\332\306\333!\210\334\335\336!\210\307*\337\336d\"\340\341 _V\203\202\342\336!\210\343\344\345\346!\"\210)\347\350!\207" [delay-mode-hooks major-mode mode-name pdf-outline-buffer-mode-map pdf-outline-buffer-mode-syntax-table pdf-outline-buffer-mode-abbrev-table make-local-variable t outline-mode pdf-outline-buffer-mode "PDF Outline" mode-class put keymap-parent set-keymap-parent current-local-map char-table-parent standard-syntax-table set-char-table-parent syntax-table abbrev-table-get :parents abbrev-table-put use-local-map set-syntax-table outline-regexp "\\( *\\)." outline-level #[0 "\301\302!G\245T\207" [pdf-outline-buffer-indent match-string 1] 2] toggle-truncate-lines 1 count-lines 1.5 frame-height hide-sublevels message "%s" substitute-command-keys "Try \\[pdf-outline-display-link], \\[pdf-outline-select-pdf-window], \\[pdf-outline-move-to-current-page] or \\[pdf-outline-follow-link-and-quit]" run-mode-hooks pdf-outline-buffer-mode-hook local-abbrev-table buffer-read-only] 5 (#$ . 7350) nil]) #@115 Non-nil if Pdf-Outline-Follow mode is enabled. Use the command `pdf-outline-follow-mode' to change this variable. (defvar pdf-outline-follow-mode nil (#$ . 9396)) (make-variable-buffer-local 'pdf-outline-follow-mode) #@601 Display links as point moves. This is a minor mode. If called interactively, toggle the `Pdf-Outline-Follow mode' mode. If the prefix argument is positive, enable the mode, and if it is zero or negative, disable the mode. If called from Lisp, toggle the mode if ARG is `toggle'. Enable the mode if ARG is nil, omitted, or is a positive number. Disable the mode if ARG is a negative number. To check whether the minor mode is enabled in the current buffer, evaluate `pdf-outline-follow-mode'. The mode's hook is called both when the mode is enabled and when it is disabled. (fn &optional ARG) (defalias 'pdf-outline-follow-mode #[256 "\303 \304=\203 ?\202\247\203\305W\203\306\202\307\310\301!\2031\311\300 \"\2031\300 B\306\203A\312\313\314\306\307$\210\202G\315\313\314\307#\210\316\317\203Q\320\202R\321\"\210\322\323!\203t\303 \203f\211\303 \232\203t\324\325\203p\326\202q\327\330#\210\210\331 \210\207" [pdf-outline-follow-mode local-minor-modes pdf-outline-follow-mode-last-link current-message toggle 1 nil t boundp delq add-hook post-command-hook pdf-outline-follow-mode-pch remove-hook run-hooks pdf-outline-follow-mode-hook pdf-outline-follow-mode-on-hook pdf-outline-follow-mode-off-hook called-interactively-p any message "Pdf-Outline-Follow mode %sabled%s" "en" "dis" " in current buffer" force-mode-line-update] 7 (#$ . 9620) (byte-code "\203\n\301!\202 \302C\207" [current-prefix-arg prefix-numeric-value toggle] 2)]) (defvar pdf-outline-follow-mode-hook nil) (byte-code "\301\302N\204\f\303\301\302\304#\210\303\301\305\306#\210\303\301\307\310C#\210\311\312\310\313\300!\205#\310\211%\207" [pdf-outline-follow-mode-map pdf-outline-follow-mode-hook variable-documentation put "Hook run after entering or leaving `pdf-outline-follow-mode'.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it. (This is true for all hook variables.)" custom-type hook standard-value nil add-minor-mode pdf-outline-follow-mode boundp] 6) (defalias 'pdf-outline-follow-mode-pch #[0 "\301`!\211\205\211=?\205\211\302`!\207" [pdf-outline-follow-mode-last-link pdf-outline-link-at-pos pdf-outline-display-link] 3]) #@183 Display an PDF outline of BUFFER. BUFFER defaults to the current buffer. Select the outline buffer, unless NO-SELECT-WINDOW-P is non-nil. (fn &optional BUFFER NO-SELECT-WINDOW-P) (defalias 'pdf-outline #[512 "\301\302!\"?\205\303!\207" [pdf-outline-display-buffer-action display-buffer pdf-outline-noselect select-window] 5 (#$ . 11822) (byte-code "\302\206 :D\207" [current-prefix-arg last-nonmenu-event nil] 2)]) #@79 Create an PDF outline of BUFFER, but don't display it. (fn &optional BUFFER) (defalias 'pdf-outline-noselect #[256 "r\211\203\211q\210\303 \210p\304 \305 =\205\306 \307 \310!\311!r\211q\210\204=\212\312!)\313U\203:\314!\210\315\316!\210\317 \210\320\300!\210\206Jp)\266\206)\207" [other-window-scroll-buffer pdf-outline-pdf-window pdf-outline-pdf-document pdf-util-assert-pdf-buffer pdf-view-buffer-file-name window-buffer selected-window pdf-outline-buffer-name get-buffer get-buffer-create pdf-outline-insert-outline 0 kill-buffer error "PDF has no outline" pdf-outline-buffer-mode make-local-variable] 9 (#$ . 12255)]) #@29 (fn &optional PDF-BUFFER) (defalias 'pdf-outline-buffer-name #[256 "\211\204p\262\300\301\302!\"\207" [format "*Outline %s*" buffer-name] 5 (#$ . 12905)]) #@19 (fn PDF-BUFFER) (defalias 'pdf-outline-insert-outline #[257 "\205\302!\303\304!\211\203k\211@\211\305\236A\306\236A\307\236A\310\236A\311=\203b\312\313S _\314\"\303V\203K\315\316 \203FS8\202G\"\202L\317Q\305\320\321\322 !\323\f&\210\324 \210T\262\266A\266\202\202 \210\207" [pdf-outline-display-labels pdf-outline-buffer-indent pdf-info-pagelabels 0 pdf-info-outline type depth title page goto-dest insert-text-button make-string 32 format " (%s)" "(invalid)" pdf-outline help-echo pdf-links-action-to-string pdf-outline-link newline] 18 (#$ . 13072)]) #@31 (fn &optional IF-VISIBLE-P) (defalias 'pdf-outline-get-pdf-window #[256 "\302 r\303\304\"\216\305!\203\202'\306!\203\307\310!\202'\311!\206'\312!\313 !\2039\211\314 !=\2039 \202H\315!\206H?\205H\316\317\"\211\211\266\202*\207" [pdf-outline-pdf-document pdf-outline-pdf-window internal--before-save-selected-window make-closure #[0 "\301\300!\207" [V0 internal--after-save-selected-window] 2] buffer-live-p bufferp error "PDF buffer was killed" find-buffer-visiting find-file-noselect window-live-p window-buffer get-buffer-window display-buffer (nil (inhibit-same-window . t))] 6 (#$ . 13666)]) #@79 Move to the item corresponding to the current page. Open nodes as necessary. (defalias 'pdf-outline-move-to-current-page #[0 "\300\301\302 !r\303\304\"\216\305@\306\"\210\307\310\300\"\262*\210\311!\207" [nil internal--before-with-selected-window pdf-outline-get-pdf-window make-closure #[0 "\301\300!\207" [V0 internal--after-with-selected-window] 2] select-window norecord image-mode-window-get page pdf-outline-move-to-page] 5 (#$ . 14291) nil]) #@49 Quit browsing the outline and kill it's buffer. (defalias 'pdf-outline-quit-and-kill #[0 "\300\301!\207" [pdf-outline-quit t] 2 (#$ . 14751) nil]) #@56 Quit browsing the outline buffer. (fn &optional KILL) (defalias 'pdf-outline-quit #[256 "\300 \301\302!\210\303\"\207" [selected-window pdf-outline-select-pdf-window t quit-window] 5 (#$ . 14904) "P"]) #@84 Like `outline-up-heading', but `push-mark' first. (fn ARG &optional INVISIBLE-OK) (defalias 'pdf-outline-up-heading #[513 "`\300\"\210\211`U?\205\301!\207" [outline-up-heading push-mark] 6 (#$ . 15115) "p"]) #@40 Move to the end of the outline buffer. (defalias 'pdf-outline-end-of-buffer #[0 "`db\210m\203o\204\300`!\204\301y\210\211`U?\205\302!\207" [button-at -1 push-mark] 3 (#$ . 15335) nil]) #@22 (fn &optional POS) (defalias 'pdf-outline-link-at-pos #[256 "\211\204`\262\300!\206\300S!\211\205\301\302\"\207" [button-at button-get pdf-outline-link] 5 (#$ . 15535)]) #@82 Select PDF window and move to the page corresponding to POS. (fn &optional POS) (defalias 'pdf-outline-follow-link #[256 "\211\204`\262\300!\211\204\301\302!\210\303\304 !\210\305!\207" [pdf-outline-link-at-pos error "Nothing to follow here" select-window pdf-outline-get-pdf-window pdf-links-action-perform] 4 (#$ . 15723) nil]) #@113 Select PDF window and move to the page corresponding to POS. Then quit the outline window. (fn &optional POS) (defalias 'pdf-outline-follow-link-and-quit #[256 "\300\206`!\301 \210\211\204\302\303!\210\304!\207" [pdf-outline-link-at-pos pdf-outline-quit error "Nothing to follow here" pdf-links-action-perform] 4 (#$ . 16068) nil]) #@72 Display the page corresponding to the link at POS. (fn &optional POS) (defalias 'pdf-outline-display-link #[256 "\211\204`\262\301\302!\211\204\303\304!\210\305\306 !r\307\310\"\216\311@\312\"\210\313!\210*\210\314\301!)\207" [inhibit-redisplay t pdf-outline-link-at-pos error "Nothing to follow here" internal--before-with-selected-window pdf-outline-get-pdf-window make-closure #[0 "\301\300!\207" [V0 internal--after-with-selected-window] 2] select-window norecord pdf-links-action-perform force-mode-line-update] 7 (#$ . 16414) nil]) #@70 Display the page corresponding to the position of EVENT. (fn EVENT) (defalias 'pdf-outline-mouse-display-link #[257 "\300\301\302!!!\207" [pdf-outline-display-link posn-point event-start] 5 (#$ . 16970) "@e"]) #@73 Display and select the PDF document window. (fn &optional NO-CREATE-P) (defalias 'pdf-outline-select-pdf-window #[256 "\300!\301!\205\f\302!\207" [pdf-outline-get-pdf-window window-live-p select-window] 4 (#$ . 17188) nil]) #@54 Toggle hidden state of the current complete subtree. (defalias 'pdf-outline-toggle-subtree #[0 "\212\300 \210\301 \302\206\f`\303\"\304=\262\204\305 \202\306 )\207" [outline-back-to-heading line-end-position get-char-property invisible outline hide-subtree show-subtree] 4 (#$ . 17423) nil]) #@59 Move to an outline item corresponding to PAGE. (fn PAGE) (defalias 'pdf-outline-move-to-page #[257 "\300!b\210\212\301\302\206 `\303\"\304=\262\203!\305\306\307\"\210\310 \210\202)\212\301\302\206*`\303\"\304=\262\203;\305\306\307\"\210\310 \210)\311 \207" [pdf-outline-position-of-page nil get-char-property invisible outline outline-up-heading 1 t show-children back-to-indentation] 5 (#$ . 17728) (byte-code "\203\n\301!\206 \302\303!C\207" [current-prefix-arg prefix-numeric-value read-number "Page: "] 2)]) #@13 (fn PAGE) (defalias 'pdf-outline-position-of-page #[257 "\300\212eb\210\301\302\303 \"\211\262\203\211W\203\300y\210\202`)\207" [nil alist-get page pdf-outline-link-at-pos] 5 (#$ . 18262)]) #@41 Enable imenu in the current PDF buffer. (defalias 'pdf-outline-imenu-enable #[0 "\302 \210\303\301!\210\203\304\202\305\306\307!\207" [pdf-outline-imenu-use-flat-menus imenu-create-index-function pdf-util-assert-pdf-buffer make-local-variable pdf-outline-imenu-create-index-flat pdf-outline-imenu-create-index-tree imenu-add-to-menubar "PDF Outline"] 2 (#$ . 18468) nil]) #@42 Disable imenu in the current PDF buffer. (defalias 'pdf-outline-imenu-disable #[0 "\302 \210\303\300!\210\304\305\306\304\"\210 \307\310 !=\205\311\307\310 !!\207" [imenu-create-index-function pdf-view-mode-map pdf-util-assert-pdf-buffer make-local-variable nil local-set-key [menu-bar index] keymap-parent current-local-map use-local-map] 3 (#$ . 18852) nil]) #@30 (fn LINK &optional LABELS) (defalias 'pdf-outline-imenu-create-item #[513 "\300\236A\301\236A\302\303\203S8\202#\304\305F\207" [title page format "%s (%s)" 0 pdf-outline-imenu-activate-link] 10 (#$ . 19222)]) (defalias 'pdf-outline-imenu-create-index-flat #[0 "\205\301 \302\303 \211\203,\211@\211\304\236A\211\305=\203#\306\"B\262\266A\266\202\202 \210\211\237\207" [pdf-outline-display-labels pdf-info-pagelabels nil pdf-info-outline type goto-dest pdf-outline-imenu-create-item] 9]) (defalias 'pdf-outline-imenu-create-index-tree #[0 "\301\302\303\304\305 \306\307\310\311\"$!\205\312 \"\207" [pdf-outline-display-labels pdf-outline-imenu-create-index-tree-1 pdf-outline-treeify-outline-list cl-remove-if-not #[257 "\211\300=\207" [goto-dest] 3 "\n\n(fn TYPE)"] pdf-info-outline :key apply-partially alist-get type pdf-info-pagelabels] 9]) #@31 (fn NODES &optional LABELS) (defalias 'pdf-outline-imenu-create-index-tree-1 #[513 "\300\301\302\"\"\207" [mapcar make-closure #[257 "\301@@:\203A\262@\262\302\300\"\203$\303\304\"\305\300\"BB\207\207" [V0 nil pdf-outline-imenu-create-item alist-get title pdf-outline-imenu-create-index-tree-1] 8 "\n\n(fn NODE)"]] 6 (#$ . 20106)]) #@13 (fn LIST) (defalias 'pdf-outline-treeify-outline-list #[257 "\211\205M\300\301@\"\302\203H\300\301@\"Y\203H\300\301@\"U\203A@A\203<\300\301A@\"V\203<\211\303A!B\262\211B\266\202A\262\202\n\304!\266\202\207" [alist-get depth nil pdf-outline-treeify-outline-list reverse] 7 (#$ . 20461)]) #@19 (fn &rest ARGS) (defalias 'pdf-outline-imenu-activate-link #[128 "\3008\301=\203\f\211A\262\302\3008!\207" [2 pdf-outline-imenu-activate-link pdf-links-action-perform] 4 (#$ . 20779)]) (byte-code "\300\301\302\303\304$\210\305\301\304\"\207" [ad-add-advice imenu--split-menu (pdf-outline nil t (advice lambda nil "Advice to keep the original outline order.\n\n Calls `pdf-outline-imenu--split-menu' instead, if in a PDF\n buffer and `pdf-outline-imenu-keep-order' is non-nil." (if (not (and (pdf-util-pdf-buffer-p) pdf-outline-imenu-keep-order)) ad-do-it (setq ad-return-value (pdf-outline-imenu--split-menu menulist title))))) around nil ad-activate] 5) #@227 Replacement function for `imenu--split-menu'. This function does not move sub-menus to the top, therefore keeping the original outline order of the document. Also it does not call `imenu-sort-function'. (fn MENULIST TITLE) (defalias 'pdf-outline-imenu--split-menu #[514 "\302!\303>\203C\262\304\"\262G V\203$\305\306\307 \"\"\262\237\244B\207" [imenu--rescan-item imenu-max-items copy-sequence nil delq mapcar #[257 "\300\301@@\"B\207" [format "From: %s"] 4 "\n\n(fn MENU)"] imenu--split] 9 (#$ . 21447)]) (byte-code "\3001 \301\302!\210\3030\202\210\202\203\304\305\306\"\210\307\310!\207" [(error) imenu--truncate-items (("" 0)) nil eval-after-load "imenu" #[0 "\300\301\302\"\207" [defalias imenu--truncate-items #[257 "\300\301\"\207" [mapc #[257 "\247\203\211@GV\203\211@\301O\240\210\302!\205\303A!\207" [imenu-max-item-length 0 imenu--subalist-p imenu--truncate-items] 5 "\n\n(fn ITEM)"]] 4 "Truncate all strings in MENULIST to `imenu-max-item-length'.\n\n(fn MENULIST)"]] 3] provide pdf-outline] 3)