KeenType
koreader
KeenType | koreader | |
---|---|---|
13 | 390 | |
104 | 15,254 | |
- | 2.0% | |
10.0 | 9.7 | |
8 months ago | 4 days ago | |
Java | Lua | |
GNU General Public License v3.0 or later | GNU Affero General Public License v3.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
KeenType
-
LaTeX3: Programming in LaTeX with Ease
> modern languages like Markdown
Markdown was created in 2004. From the creator:
> ... the single biggest source of inspiration for Markdown’s syntax is the format of plain text email.
Email goes back to 1965, though I suspect Markdown's influence stems from the more widely adopted email usage from the 1990s.
> Part of LaTeX's success was the absolutely beautiful documents it can make with nothing but a personal computer.
I'd say that was TeX's success, with LaTeX bolted on later to greatly improve TeX's extensibility. Keep in mind, there are a number of TeX-centric implementations beyond LaTeX. For example, my fork of NTS, called KeenType, is a pure Java version of TeX that can typeset beautifully and has at its core Knuth's original TeX files.
https://github.com/DaveJarvis/KeenType/tree/main/tex/src/mai...
-
Expanding TeX's \Newif (2021)
My port of the New Typesetting System (NTS), called KeenType, whittles down the Java-based implementation to a few of Knuth's files. Namely, "plain.tex" and "hyphen.tex":
https://github.com/DaveJarvis/KeenType/tree/main/tex/src/mai...
Getting familiar with the fonts required understanding the difference between font metrics (TFM files) and the fonts themselves. To make matters a little less straightforward, Knuth created a special character mapping for indexes into the fonts. It was not easy to find a font that mapped those glyphs exactly. The closest font was BaKoMa:
https://github.com/DaveJarvis/KeenType/tree/main/tex/src/mai...
This required hard-coding a mapping between Knuth's code points and the actual code points in the target font:
https://github.com/DaveJarvis/KeenType/blob/989dbe26f68eda75...
-
The fastest math typesetting library for the web
A while ago I optimized KeenType, which although not JavaScript-based, generates SVG images, which can be embedded into web pages.
https://github.com/DaveJarvis/keentype
The following tutorial shows the real-time rendering speed of KeenType within my text editor, KeenWrite:
https://youtu.be/vgyYXwwF_lc?list=PLB-WIt1cZYLm1MMx2FBG9KWzP...
- Reducing code size in (Rust) librsvg by removing an unnecessary generic struct
- KeenType: Pure Java typesetting system
-
Different algorithms for converting binary to decimal floating-point numbers
In Java, many number-to-string implementations use NumberFormat. This is abysmally slow if the problem domain doesn't require internationalization, which is the case for machine-readable file formats, such as SVG. When I performance tested JMathTeX for rendering TeX, the bottleneck for converting TeX into SVG elements was JFreeSVG's use of NumberFormat[0]. Replacing NumberFormat with RyuDouble doubled the throughput[1]. (Reusing a StringBuilder for to concatenate strings yielded another doubling.)
For KeenType[2], a fork of the New Typesetting System (and more complete TeX implementation than JMathTeX), I added an SVG generator that converts numbers to string using a StackOverflow answer[3], instead of using Ryu[4]. The performance was even better and the algorithm vastly simpler.
Knuth was right: measure, then optimize.
[0]: https://github.com/jfree/jfreesvg
[1]: https://github.com/jfree/jfreesvg/pull/30
[2]: https://github.com/DaveJarvis/KeenType
[3]: https://stackoverflow.com/a/10554128/59087
[4]: https://github.com/DaveJarvis/KeenType/blob/fef005579021f394...
-
KeenWrite 3.2.0
KeenType, a modernized and optimized NTS fork, replaces KeenTeX.
koreader
-
Ask HN: Best Open E-Reader?
Kobos[1] and Pocketbooks[2] are a lot more open than Kindles. AFAIK you can transfer .epub files into both devices and these epubs are perfectly readable via the stock OS. If for some reason you find the stock proprietary OS lacking, you can install an open source one like KOreader [3] or Plato[4]
Of course you want a good way of organizing epubs pdfs mobi, and like has already been mentioned Calibre[5] is a great option.
[1]https://www.kobo.com/
[2]https://pocketbookstore.com/en-ca
[3]https://github.com/koreader/koreader
[4]https://github.com/baskerville/plato
[5]https://calibre-ebook.com/
-
KOReader Document Viewer for E Ink devices
[2]: https://github.com/koreader/koreader/wiki/Dictionary-support...
-
Majority of web apps could just run on a single server
Oh man I absolutely love the work that you guys do. I'm actually in the process of learning Ebook production using the 'Step by Step' guide on your website. I'm essentially learning it all from scratch as I have little to no programming/SWE experience (I learned a bit of Lua because of KOReader[1]) but the technical side of ebook production has always fascinated me enough to keep learning.
[1] https://github.com/koreader/koreader
-
Wear OS "Hybrid" design has two OSes, two CPUs, "100 hour" battery life
Ha! I feel similarly, if not as eloquently.
Installed https://github.com/koreader/koreader on mine + enabled SSH server.
-
E-books are fast becoming tools of corporate surveillance
I read that KOreader is unstable on the Libra 2[0], so I haven’t installed it yet even though I would like to. What has been your experience running it?
[0] https://github.com/koreader/koreader/issues/8414
-
First E-reader. I am thinking of buying Kobo Libra 2?
You can easily modify it (like adding KOReader).
-
Conversion from epub to kepub, and related Calibre use
I'm using Kobo Clara 2E (6" screen size), and it is unpleasant to read PDF and CBZ files (comic/manga) since Kobo only provides zoom and orientation mode. I installed KOReader on my Kobo. It has more setup to display those files way better. The views of PDF in KOReader and Comic in Koreader. I read Epub files in Koreader to maintain its original format.
-
Should I buy a kobo libra 2 or carla 2e for manga
I installed KOReader on my Kobo Clara 2E. KOReader is a document viewer to read PDFs and manga/comics. KOReader has more setup to display fixed-layout format in a way that is better than the native Kobo display (Kobo stock).
-
Calibre – New in Calibre 7.0
It doesn't try to solve the same use cases that Calibre does, but I built an open source (EPUB only) manager / reader / statistics tracker called AnthoLume [0]. It mostly stemmed from me reading in KOReader [1] on my Kindle, and not having the ability to sync the progress to my iPhone / iPad.
It's got metadata matching, support for multiple users, and statistics tracking which allows me to have a "Leaderboard" that shows how fast you read (words per minute). Fun competition between my wife and I (that I'm 100% losing). It's a Progressive Web App and utilizes a Service Worker to support 100% offline reading as well.
There's a demo server [2] (creds are "demo" for both user & pass).
[0] https://gitea.va.reichard.io/evan/AnthoLume
[1] http://koreader.rocks/
[2] https://antholume-demo.cloud.reichard.io/
- I wanted to get the Libra 2 but is it good for reading manga without much hassle?
What are some alternatives?
Sentinel - A powerful flow control component enabling reliability, resilience and monitoring for microservices. (面向云原生微服务的高可用流控防护组件)
plato - Document reader
asciimathml - A new home for asciimathml
Tachiyomi - Free and open source manga reader for Android. [Moved to: https://github.com/tachiyomiorg/tachiyomi]
awesome-typst - Awesome Typst Links
koodo-reader - A modern ebook manager and reader with sync and backup capacities for Windows, macOS, Linux and Web
latex-snippets - Vim + LaTeX snippets setup
Kavita - Kavita is a fast, feature rich, cross platform reading server. Built with the goal of being a full solution for all your reading needs. Setup your own server and share your reading collection with your friends and family.
KmCaster - Capture keyboard and mouse events for screencasting
Calibre Web - :books: Web app for browsing, reading and downloading eBooks stored in a Calibre database
jfreesvg - A fast, lightweight Java library for creating Scalable Vector Graphics (SVG) output.
calibre - The official source code repository for the calibre ebook manager