KeenType

Pure Java typesetting system (by DaveJarvis)

KeenType Alternatives

Similar projects and alternatives to KeenType

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a better KeenType alternative or higher similarity.

KeenType reviews and mentions

Posts with mentions or reviews of KeenType. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-07-31.
  • LaTeX3: Programming in LaTeX with Ease
    6 projects | news.ycombinator.com | 31 Jul 2023
    > 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)
    1 project | news.ycombinator.com | 2 May 2023
    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
    7 projects | news.ycombinator.com | 16 Apr 2023
    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
    4 projects | news.ycombinator.com | 5 Mar 2023
  • KeenType: Pure Java typesetting system
    1 project | /r/programming | 21 Feb 2023
    1 project | /r/opensource | 20 Feb 2023
    1 project | /r/java | 24 Jan 2023
    1 project | /r/patient_hackernews | 23 Jan 2023
  • Different algorithms for converting binary to decimal floating-point numbers
    4 projects | news.ycombinator.com | 9 Feb 2023
    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
    2 projects | /r/Markdown | 29 Jan 2023
    KeenType, a modernized and optimized NTS fork, replaces KeenTeX.
  • A note from our sponsor - WorkOS
    workos.com | 25 Apr 2024
    The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning. Learn more →

Stats

Basic KeenType repo stats
13
104
10.0
8 months ago

Sponsored
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com