Commit Graph

44 Commits

Author SHA1 Message Date
Jeromos Kovács 59c0e2338b ci cd (#132)
* ci: format

* ci: run on tag push, manual dispatch

* ci: release a tip on each push to `main` and tag release on tag pushes

* ci: run on more platforms

* ci: don't fail fast

* ci: enable windows

* Update .github/workflows/rust.yml

Co-authored-by: June <61218022+itsjunetime@users.noreply.github.com>

* Update .github/workflows/rust.yml

Co-authored-by: June <61218022+itsjunetime@users.noreply.github.com>

* Update .github/workflows/rust.yml

Co-authored-by: June <61218022+itsjunetime@users.noreply.github.com>

* chore: update custom `ratatui-image` rev

* Update .github/workflows/rust.yml

Co-authored-by: June <61218022+itsjunetime@users.noreply.github.com>

* Update .github/workflows/rust.yml

Co-authored-by: June <61218022+itsjunetime@users.noreply.github.com>

* chore(deps): update kittage

* Update kittage for maybe more windows fixes

* Update kittage again for more windows fixes

* Update kittage again.....

* Maybe actually compile windows correctly now?

* update kittage

* oopsie forgot abt lock file

* windows and kittage again ...

* maybe fix the file path conversion stuff?

* kittage once again...........

---------

Co-authored-by: June <61218022+itsjunetime@users.noreply.github.com>
Co-authored-by: itsjunetime <junewelker@gmail.com>
2026-03-05 11:50:46 -06:00
Ishan Deshpande 52994b8b89 adding a rotate feature for pdfs (#133)
* adding a rotate feature for pdfs that have rotated graphs and such (WIP)

* Scales to window width

* combined match arms

* added help menu text
2026-02-18 21:45:56 -06:00
Max Dexheimer 577141e201 Fix TODOs
Fixes non UTF8 filenames by not converting to `String` for no reason.

Also removes TODO for the fill-page feature, which already exists.
2026-01-22 15:33:29 +01:00
June 39a4bdafb6 small cleanups (#129)
- don't parse color strings for defaults
- fix comment misstating type of vec
- impl size_hint and ExactSizeIterator for PopOnNext
2026-01-09 20:53:25 -05:00
itsjunetime 8f57cd02c3 - Added more lints to Cargo.toml (for fun I guess)
- Extended benchmarking system to check all protocols, not just kitty
- Updated deps
2025-11-26 12:25:56 -06:00
itsjunetime 690489016c fmt 2025-09-05 11:15:58 -05:00
itsjunetime bd5554db27 Update mupdf to use git dependency so it works on windows 2025-09-05 10:34:46 -05:00
June b6bc76edbb New kitty image backend (#74)
* Initial attempt at supporting new backend for kitty images

* it's almost working !!

* it almost basically works

* yaaayyyy it works

* Use github kittage

* Uhhhh various improvements from kittage and psx-shm

* Remove logging

* incorporate recovering from deleted images

* Make it work correctly with ghostty image eviction too

* fall back to stdout if shms don't work

* Make help page work again

* zooming basically does what you'd expect now

* yay zooming woohoo

* clean up top and bottom rendering

* Only allow zooming in kitty

* Add debug logging and fix cursor placement after image display

* yaaaay zooming out once you're already zoomed in and respecting kitty's limits for how big of an image to display

* mmmm maybe it's finally ready to merge...

* Update deps

* Switch around list of items on changelog

* fmt

* Small fixes to avoid panic and allow zooming back in after zooming out
2025-08-06 09:34:55 -06:00
itsjunetime f0afd22ff5 Don't tint if colors are default 2025-06-05 17:20:09 -06:00
JanNeuendorf e16163efb8 Custom Colors (#70)
* First implementation of custom colors

* Remove use-statement

Co-authored-by: June <61218022+itsjunetime@users.noreply.github.com>

* Cleaned up help-text

Co-authored-by: June <61218022+itsjunetime@users.noreply.github.com>

* Removed superfluous features from csscolorparser

* Fix for clippy

* Clarify how to pass in custom colors

* Explicitly install clippy and rustfmt in CI

* Better error handling when colors can not be parsed

Co-authored-by: June <61218022+itsjunetime@users.noreply.github.com>

* More elegant type conversion

Co-authored-by: June <61218022+itsjunetime@users.noreply.github.com>

* Made clippy happy

---------

Co-authored-by: June <61218022+itsjunetime@users.noreply.github.com>
Co-authored-by: itsjunetime <junewelker@gmail.com>
2025-05-28 11:16:07 -06:00
itsjunetime 5c7073b31e Update to crates.io mupdf 2025-04-28 12:44:22 -06:00
itsjunetime 595f23de6f Fix some more issues preventing tests from finishing and causing excessive re-renders 2025-03-17 08:51:57 -06:00
itsjunetime d8ee0744b8 Fix issue with search results not being highlighted sometimes 2025-03-16 21:59:36 -06:00
itsjunetime fc10dc8ffe Dramatically improve search performance by pausing rendering every once-in-a-while 2025-03-06 16:26:56 -07:00
itsjunetime ef8ace4f35 Use new mupdf search API 2025-03-06 10:30:05 -07:00
itsjunetime 36279f5258 Remove now-unnecessary loop 2025-03-01 19:12:08 -07:00
itsjunetime 1eee193d44 Implement fullscreen functionality 2025-03-01 18:27:34 -07:00
itsjunetime d2be289e80 Implement help page and delay receiving area to hopefully improve first-page performance a bit 2025-03-01 18:04:33 -07:00
Mikołaj Pieczaba 7e4bee516b refactor: make fill_default use Vec::resize_with (#53) 2025-02-23 14:35:29 -07:00
itsjunetime aae1f9d37b Improve performance by better pre-allocating pixmap buffer 2025-02-21 20:56:25 -07:00
itsjunetime 9d2a730e40 Implement inverting colors 2025-02-19 15:24:27 -07:00
June 524c069b83 Rewrite with mupdf as a backend (#50)
* Initial implementation of attempted mupdf rewrite

* Change back to no resizing and don't include alpha channel in conversion

* Remove some more dead code

* Make features more modular and call search more easily

* Switch to git dependency for my fixes

* Update deps

* Fix searching hehe

* Remove unnecessary CI steps?

* fontconfig in CI

* perftools in ci

* Final adjustments to conform to mupdf changes
2025-02-19 09:59:29 -07:00
itsjunetime 0129c498c2 Fix document reloading with delete-then-write editors and redo BottomMessage updating to work better 2024-12-01 13:19:18 -07:00
itsjunetime 65e1f1a205 Switch to mimalloc 2024-11-27 18:57:39 -07:00
itsjunetime e51e9d3464 Add --r-to-l and --max-wide flags to cli args 2024-11-03 16:41:58 -07:00
itsjunetime 7c13054383 Fix a few more small clippy issues 2024-10-26 15:45:20 -06:00
itsjunetime d5284be123 Update deps and make it work with notify 7 2024-10-26 15:01:56 -06:00
itsjunetime 4296c92d7d Recover from 'pdf is damaged' err and update deps 2024-08-15 18:15:50 -06:00
itsjunetime f893ecba4d - Add profiling with --profile-time
- Update ratatui_image to get improvements from parallelization and removing unnecessary hashing
- Add benchmarks for only converting pages (not rendering)
- Add option to define number of pages to prerender on converter
2024-06-05 00:20:18 -06:00
itsjunetime 8feea1127b - Run fmt
- Use built-in async benching
- Use custom Resize::None when making ratatui images to save some cycles
2024-06-04 16:50:51 -06:00
itsjunetime 5825849434 - Significantly improved time to render full document
- Added support for debugging with tokio-console through tracing feature
- Added extra benchmark for checking time to render first page
- Removed unwraps to just make background loops return and terminate if something goes wrong
- Modularize rendering somewhat
2024-06-04 15:46:25 -06:00
itsjunetime a86730b8da Very minor performance improvements 2024-06-04 01:12:40 -06:00
itsjunetime 7e2d0d3bea Add initial support for doing benchmarking and some starting info on how to build the benchmark stuff with poppler debug info 2024-06-03 22:16:05 -06:00
itsjunetime eaae21b6e3 Format and fix clippy unnecessary 'as' 2024-05-27 00:37:48 -06:00
itsjunetime 9e4ee1ca97 - Remove unused oxipng dep
- throw converter onto its own task
- switch to using multi-thread runtime
- use unbounded channels in a few more places to prevent deadlocks
2024-05-27 00:30:56 -06:00
itsjunetime b783692ccc - Add README
- Optimize for speed instead of size
- Actually set contained_term in renderer to prevent unnecessary rerenders
- Add comments about usage of personal ratatui branches
2024-05-26 16:58:54 -06:00
itsjunetime aaa5b0b7ed Add formatter and format 2024-05-26 16:35:36 -06:00
itsjunetime 46ca98a12d Add caching of rendered pages so we don't need to re-render them after changing search term if we already rendered them without any matches 2024-05-26 15:49:51 -06:00
itsjunetime d40483d3b1 Make searching results look prettier 2024-05-26 15:08:59 -06:00
itsjunetime 698cdf924a Make searching work much better and actually make the 'n' input skip to the next page with available results 2024-05-26 01:42:49 -06:00
itsjunetime 097c2918e5 Add search functionality 2024-05-19 23:15:42 -06:00
itsjunetime 6aaa9845c9 Add converter to prerender a subset of images while being more friendly towards memory usage 2024-05-17 11:33:52 -06:00
itsjunetime ad652f3fcd Store images as Vec<u8> png data before rendering to keep memory usage lower 2024-05-16 18:35:37 -06:00
itsjunetime f298468dc8 Initial commit since things seem pretty solid 2024-05-16 18:23:11 -06:00