keenwrite
m4b-tool
Our great sponsors
keenwrite | m4b-tool | |
---|---|---|
71 | 28 | |
493 | 822 | |
- | - | |
8.1 | 3.8 | |
6 days ago | 21 days ago | |
Java | PHP | |
GNU General Public License v3.0 or later | MIT License |
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.
keenwrite
- FLiP Stack Weekly 28-Jan-2023
-
Pure Java Typesetting System
> like font face, font size, horizontal and vertical element positioning and line spacing, etc.
May I recommend ConTeXt?
For my purposes, KeenType was only meant to provide a real-time "rough draft" of equations rendered inside of KeenWrite[0], my FOSS Markdown editor. That is, I edit in Markdown, then KeenWrite converts the inline TeX-based equations for previewing. When I'm ready to create a "finished" product, KeenWrite exports the Markdown to XHTML then feeds the XHTML, along with a theme, to ConTeXt[1]. The various themes[2] are where font faces sizes, alignment, kerning, etc. are tweaked. In this way content remains completely separated from presentation.
[0]: https://github.com/DaveJarvis/keenwrite
-
Architecture diagrams should be code
KeenWrite[0], the FOSS Markdown text editor I’ve been working on, includes the ability to render plain text diagrams via Kroki[1]†. See the screenshots[2] for examples. Here’s a sample Markdown document that was typeset[3] using ConTeXt[4] (and an early version of the Solare[5] theme).
One reason I developed KeenWrite was to use variables inside of plain text diagrams. In the genealogy diagram, when any character name (that’s within the diagram) is updated, the diagram regenerates automatically. (The variables are defined in an external YAML file, allowing for integration with build pipelines.)
Version 3.x containerizes the typesetting system, which greatly simplifies the installation instructions that allow typesetting Markdown into PDF files. It also opens the door to moving Kroki into the container so that diagram descriptions aren’t pushed over the Internet to be rendered.
†Kroki, ergo KeenWrite, supports BlockDiag (BlockDiag, SeqDiag, ActDiag, NwDiag, PacketDiag, RackDiag), BPMN, Bytefield, C4 (with PlantUML), Ditaa, Erd, Excalidraw, GraphViz, Nomnoml, Pikchr, PlantUML, Structurizr, SvgBob, UMLet, Vega, Vega-Lite, and WaveDrom.
Note that Mermaid diagrams generate non-conforming SVG[6], so they don’t render outside of web browsers. There is work being done to address[7] this problem.
[0]: https://github.com/DaveJarvis/keenwrite
[1]: https://kroki.io/
[2]: https://github.com/DaveJarvis/keenwrite/blob/main/docs/scree...
[3]: https://pdfhost.io/v/4FeAGGasj_SepiSolar_Highlevel_Software_...
[4]: https://wiki.contextgarden.net/Main_Page
[5]: https://github.com/DaveJarvis/keenwrite-themes/
-
Is it possible to add LaTeX commands to a markdown file?
KeenWrite leverages KeenWrite Themes to change how documents are presented. The Tarmes theme is an example of a very basic theme, meant to act as a base for making new themes. Take a look at Tarmes, which is probably the closest answer to your question. Feel free to add issues against the issue tracker or add questions to the discussion area.
My editor, KeenWrite allows typesetting of TeX, as shown in its screenshots. The reason I developed the editor to be TeX-based is because there are other TeX implementations besides LaTeX. One of them is ConTeXt.
- is it possible to use markdown instead of html for a website
-
OpenJDK Proposes Project Galahad to Merge GraalVM Native Compilation
It'll help build cross-platform desktop applications. In theory, it'll mean hooking the build process up to a GitHub action to build platform-specific binaries, such as my FOSS KeenWrite Markdown editor[0], without having to have a copy of every operating system.
To my knowledge, cross-compiling "native" Linux and Windows binaries using Java requires duct tape, chewing gum, and warp-packer.[1]
GraalVM isn't a panacea, though.[2] For example, GraalVM cannot compile Renjin, a pure Java R interpreter, so you have to switch from Renjin to FastR. Switching isn't trivial.
[0]: https://github.com/DaveJarvis/keenwrite
[1]: https://dave.autonoma.ca/blog/2020/06/29/write-once-build-an...
-
Converting my PhD thesis into HTML
> Nevertheless, I would prefer a Markdown-based system
My free, cross-platform desktop Markdown editor, KeenWrite[1], integrates with the ConTeXt typesetting software[2]. I'm working on a branch[3] to make integration containerized[3] because its installation is painful. KeenWrite limits math to plain TeX[4] so that the output can be rendered using any TeX-based typesetter (ConTeXt, LaTeX, MathJax, εχTEX, etc.).
Here's a sample document typeset using ConTeXt (skip to page 40 for the math):
https://pdfhost.io/v/4FeAGGasj_SepiSolar_Highlevel_Software_...
That document theme is called Solare[8].
> that can use CSS and MathML
Adding CSS mixes presentation logic with content, which is something KeenWrite strives to avoid. Instead, KeenWrite implements Pandoc's annotation syntax to keep presentation logic out of the content. I've written about this extensively in my Typesetting Markdown series[5].
You can produce some pretty amazing documents just with annotations, such as the following that I wrote in Markdown and typeset using ConTeXt:
https://impacts.to/downloads/lowres/impacts.pdf
> has a 100% bibtex clone for references.
Markdown fails at references. At some point, I'd like to implement cross-references in KeenWrite. Except there's at least six competing standards for the syntax, which I've also remarked upon[6], making the choice of syntax difficult[7].
[1]: https://github.com/DaveJarvis/keenwrite
[2]: https://wiki.contextgarden.net/Installation
[3]: https://github.com/DaveJarvis/keenwrite/blob/1_typeset_using...
[4]: https://github.com/DaveJarvis/keenwrite/blob/main/docs/scree...
[5]: https://dave.autonoma.ca/blog/2020/04/28/typesetting-markdow...
[6]: https://talk.commonmark.org/t/cross-references-and-citations...
[8]: https://github.com/DaveJarvis/keenwrite-themes/tree/main/sol...
- Consider Using CSV
- Inkscape 1.2.2 Released
m4b-tool
-
Best Windows app for combining multiple MP3s into single M4B
Look into m4btool (https://github.com/sandreas/m4b-tool). Audiobookbinder increases the m4b filesize. Followed this post for my own purposes: https://apple.stackexchange.com/questions/426094/convert-multiple-mp3-files-or-single-m4a-into-m4b-with-ffmpeg-and-afconvert
- Which Software to merge mp3 files to audiobook with chapters?
- Ask HN: What interesting problems are you working on? ( 2022 Edition)
-
Selfhosted MP3/FLAC Tag editor
I use MusicBrainz Picard in a docker container and can access over web to edit mp3 and flac. But if you use it for audiobooks you should use https://github.com/sandreas/m4b-tool
-
Advice on Complex Audiobook
However, I only went through the trouble because I didn't want audio quality to be affected at all (nothing to be encoded again, only removed). If you are not too concerned about audio quality, there is definitely programs out there on Mac that can chapterize files. M4btool is pretty powerful and there is Audiobook converter. I've heard AudioBookBinder might work as well, though I think it is older at this point.
- Does Plex support m4b audiobooks? I have been searching and results say yes, but Plex cannot find any of my books that are m4b only the ones which are mp3
-
Ask HN: How do you search for products / apps given a list of requirements?
- LG G5 H850 (optional with Bang & Olufsen Hifi-Plus module) + Audiobookshelf + Substreamer
Let me cite my comment from https://news.ycombinator.com/item?id=32042780:
I use m4b-tool[1], tone[2] and audiobookshelf[3] together with an LG G5 H850 smartphone[8] with Bang & Olufsen Hifi-Plus Module for Audio Only and I am pretty happy with this config. For Music I use Navidrome[5] and Substreamer App[7]. Maybe I'll try out Jellyfin[4] or maybe Plex[6], but I really don't wanna go closed source.
I also thought about writing something self hosted in C# to have ONE solution for audiobooks, podcasts and music and started a small private project, but this will take a while until it is ready to release something...
You may ask: Why an LG G5 H850? Well, its relatively small and cheap (about 50 - 80 bucks used) it has an audio Jack, USB-C, you can change the battery, it can hold up to 2TB microSD storage, has an HiFi Plus module for audio enthusiasts and a descent screen. Besides that it can run lineage os...
Note: I'm the author of the first two projects :-)
[1]: https://github.com/sandreas/m4b-tool
[2]: https://github.com/sandreas/tone
[3]: https://github.com/advplyr/audiobookshelf
[5]: https://www.navidrome.org/
[6]: https://www.plex.tv
- Ask HN: Is there a Calibre equivalent for Audio books?
-
What ID3v2 could have been
My audio workflow is:
- beets [1] for music tagging
- m4b-tool [2] and tone [3] for audio books merging and tagging (Note: I'm the author of these)
- iTunes and an iPod Nano 7g and iPod classic 2009 to listen
- self-hosted navidrome [4] for music and audiobookshelf [5] for audio books on my android / ios devices
Everything with docker containers without further dependencies. I must say, that this works pretty good so far.
[1]: https://beets.io/
[2]: https://github.com/sandreas/m4b-tool/
[3]: https://github.com/sandreas/tone
-
With the removal of podcasts, and the headache that is audiobooks, let me introduce you to Audiobookshelf
I’ve been using a tool someone made specifically for the use case called m4b-tool: https://github.com/sandreas/m4b-tool
What are some alternatives?
markdown-preview.nvim - markdown preview plugin for (neo)vim
ffmpeg-python - Python bindings for FFmpeg - with complex filtering support
marktext - 📝A simple and elegant markdown editor, available for Linux, macOS and Windows.
AudioBookConverter - Improved AudioBookConverter based on freeipodsoftware release (mp3 to m4b converter)
Audiobooks.bundle - Audiobook metadata agent for Plex
Zettlr - A Markdown Editor for the 21st century.
jid - json incremental digger
vim-markdown - Markdown Vim Mode
Plex-Audiobook-Guide - A walkthrough for optimal Audiobook experience using Plex
SpaceVim - A community-driven modular vim/neovim distribution - The ultimate vimrc
video-everyday - Automatically create a '1 second everyday' video
JupyterLab - JupyterLab computational environment.