| Age | Commit message (Collapse) | Author |
|
Update all pdf-tools features to work correctly when
pdf-view-roll-minor-mode is active:
- pdf-isearch: Search across all displayed pages simultaneously
- pdf-links: Link selection works with multiple visible pages
- pdf-annot: Annotations work on correct page, add pdf-annot-edit
command for avy-style annotation editing
- pdf-sync: SyncTeX jumps work with continuous scroll mode
- pdf-view: Display and navigation functions updated for multi-page
- pdf-util: Coordinate transformation updates for visible pages
- pdf-cache: Simplify prefetch (remove timer indirection)
- pdf-occur: Minor compatibility updates
The mode is experimental. Some features may not interact perfectly
with roll mode. Enable with M-x pdf-view-roll-minor-mode.
API changes:
- pdf-view-active-region now includes page information
- isearch results include page data for multi-page display
Co-authored-by: Daniel Nicolai <dalanicolai@gmail.com>
Co-authored-by: Rahguzar <aikrahguzar@zohomail.eu>
Co-authored-by: Ihor Radchenko <yantar92@gmail.com>
Co-authored-by: NightMachinery <feraidoonmehri@gmail.com>
|
|
Make selection-style configurable via `pdf-view-selection-style`. A
default value of `word` might be desirable, as selection is usually
intended to select entire words is perceptually faster than
glyph-based selection.
This affects selections and highlights, but not search.
Limitation:
The selection type is fixed for all currently selected regions.
Selecting multiple regions with different selection styles at the same
time would require storing the selection style for every region and
replacing the protocol for `cmd_addannot` with a more flexible one,
e.g. the keyword-based one used by `cmd_renderpage`.
Closes: #73
|
|
- Add / Fix docstrings for functions.
- Make punctuation changes as suggested by `checkdoc`
This commit makes changes in a subset of files of `pdf-tools`. Some of
the major files are still pending changes, and will be addressed in a
later commit.
Partially Fixes: #64
|
|
This removes the positial arguemnt triplet from the define-minor-mode
calls, because they are obsolete since Emacs<21. See the following
paragraph in the help section of define-minor-mode.
For backward compatibility with the Emacs<21 calling convention, the
keywords of define-minor-mode can also be preceded by the obsolete
triplet INIT-VALUE LIGHTER KEYMAP.
|
|
This is to avoid repeatedly scaling the displayed image width when
applying highlighting. Fixes #19. Closes #22.
As it turns out, it wasn't only `isearch` and `occur` which were
broken, but everything that includes highlighting: selection and jump
to annotation (`C-c C-a l SPC`) as well.
The behavior was caused by passing the value of
`(pdf-view-image-size)` into the highlight functions
(`pdf-info-renderpage-text-regions` and
`pdf-info-renderpage-highlight`) and using the result as it is,
without re-adjusting the displayed image width as it's done when
displaying raw pages without any highlighted elements, see [this
line](https://github.com/vedang/pdf-tools/blob/df2eea87aa84711024b48b2184b1c1ca1b2d0e7b/lisp/pdf-view.el#L935)
This caused the image width to be multiplied with the
`frame-scale-factor` in `pdf-info-renderpage` and the width of the
returned raw image to be interpreted by `create-image` as the
requested width of the image as seen in the buffer.
Fixed by passing the width explicitly in every call to
`pdf-view-create-image`, except for [this
one](https://github.com/vedang/pdf-tools/blob/df2eea87aa84711024b48b2184b1c1ca1b2d0e7b/lisp/pdf-annot.el#L1365),
which seems to be responsible for latex fragment rendering.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* lisp/pdf-isearch.el (pdf-isearch-minor-mode): Disable character-fold-search.
|
|
* lisp/pdf-isearch.el (pdf-isearch-find-next-matching-page): Use new
pdf-info interface.
|
|
* lisp/pdf-isearch.el (pdf-isearch-hl-matches): Check mode using derived-mode-p.
|
|
* lisp/pdf-tools.el: Add let-alist as requirement.
* lisp/pdf-occur.el (pdf-occur-add-matches, pdf-occur-start-search): Use new interface.
* lisp/pdf-isearch.el (pdf-isearch-search-page): Use new interface.
* lisp/pdf-info.el (pdf-info-query--transform-action,
pdf-info-query--transform-response): Prefer alists over trees or
positional lists, where appropriate.
(pdf-info-search-string,pdf-info-search-regexp,pdf-info-pagelinks
pdf-info-charlayout,pdf-info-pagelinks, pdf-info-outline,
pdf-info-synctex-forward-search, pdf-info-synctex-backward-search):
Updated documentation.
* test/pdf-info.ert: Require let-alist, use new interface.
* Makefile (bytecompile, test): Use cask.
* Cask (depends-on): Add let-alist.
* lisp/pdf-outline.el: Use new interface.
* lisp/pdf-links.el: Use new interface.
* lisp/pdf-cache.el: Use new interface.
* lisp/pdf-sync.el: Use new interface.
|
|
* lisp/pdf-isearch.el (pdf-isearch-hl-matches): Keep the scope of
pdf-info-asynchronous local.
|
|
* lisp/pdf-isearch.el (pdf-isearch-search-fun-default):
|
|
* lisp/pdf-isearch.el (pdf-isearch-minor-mode-map): Remove superfluous
bindings and use remap for pdf-occur.
* lisp/pdf-isearch.el (pdf-isearch-active-mode-map): Just scroll with M-v etc.
|
|
* lisp/pdf-isearch.el (pdf-isearch-closest-match): Recognize
horizontally growing edges.
|
|
* pdf-isearch.el (pdf-isearch-hyphenation-character): New option.
(pdf-isearch-search-fun-function): New variable similar to
isearch-search-fun-function.
(pdf-isearch-current-parameter): Add isearch-word.
(pdf-isearch-search-fun): New function similar to isearch-search-fun.
(pdf-isearch-word-search-regexp): New function similar to word-search-regexp.
|
|
* lisp/pdf-isearch.el (pdf-isearch-empty-match-p): Don't treat no matches as empty.
|
|
* lisp/pdf-occur.el (pdf-isearch): Declare function pdf-occur.
* lisp/pdf-isearch.el (pdf-occur): Require pdf-isearch.
|
|
* lisp/pdf-isearch.el:(pdf-isearch-occur): New command.
* lisp/tablist.el (tablist-generate-sorter): New macro
* lisp/pdf-tools.el (pdf-tools-modes, pdf-tools-enabled-modes): Added
occur global mode.
|
|
* lisp/pdf-isearch.el (pdf-isearch-active-mode-map,
(pdf-isearch-active-mode): Use isearch-mode-map as parent map of
pdf-isearch-active-mode-map and use it when isearching in a PDF
buffer.
|
|
* lisp/pdf-isearch.el: A single match is now represented as a list of
edges.
* lisp/pdf-links.el (pdf-links-isearch-link):
(pdf-links-isearch-link-filter-matches): Adapt to multiple edges per match.
|
|
* lisp/pdf-isearch.el (pdf-isearch-cache-images): Removed unused variable.
(pdf-isearch-hl-matches): Removed unused cacheing code.
|
|
* lisp/*.el: Use standard keywords.
|
|
* lisp/pdf-isearch.el (pdf-isearch-message): Message msg, not fmt.
|
|
* src/epdfinfo.c (cmd_search_regexp): Merge rectangles directly.
Changed response order.
(cmd_search_string): Changed response order.
* lisp/pdf-info.el (pdf-info-query--transform-response): Handle new response order.
(pdf-info-search-string): Changed the signature to make it
comparable to other functions, i.e file-or-buffer should be the
final argument.
(pdf-info-search-regexp): Dito.
* lisp/pdf-occur.el (pdf-occur): Apply new signature.
* lisp/pdf-isearch.el
(pdf-isearch-search-page,pdf-isearch-find-next-matching-page): Apply new signature.
|
|
* lisp/pdf-info.el (pdf-info-search-string, pdf-info-search-regexp,
pdf-info-pagelinks): Renamed pdf-info-search and pdf-info-re-search.
* lisp/pdf-occur.el (pdf-occur): Use new names.
* lisp/pdf-isearch.el (pdf-isearch-search-page,
pdf-isearch-find-next-matching-page): Use new names.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* lisp/pdf-isearch.el: Remove unused variable pdf-isearch-suspended-p.
(pdf-isearch-minor-mode): Removed unused isearch-done advice.
|
|
|
|
|
|
|
|
|
|
|