5 ms·
What's the reason it doesn't have many competitors? Is it intrinsically too hard of a problem, or is it a matter of network effects (extensions, existing knowle
by brundolf 6y ago
What's the reason it doesn't have many competitors? Is it intrinsically too hard of a problem, or is it a matter of network effects (extensions, existing knowledge, existing bodies of work, etc)? Or is there just a lack of motivation?
- mhh__ 6y agoTypesetting is hard
- brundolf 6y agoIt's something I'm (probably foolishly) tempted to take a swing at. I have a lot of experience with doing layout in HTML/CSS (of which printable typesetting feels like a subset, superficially at least), and I've been getting into writing parsers/doing language design recently. The only problem is I don't know a ton about LaTeX or how people use it other than "it lets you very precisely format documents via special markup, including things like mathematical formulas and diagrams (?), and it's used by lots of academics".
- zzless 6y agoI respect your courage but I have to disagree with your assessment of CSS vs real typography. Layout capabilities of CSS are orders of magnitude less extensive compared to those of TeX. For example it is nearly impossible to say, put a box 2/3 of the width of a container of unknown width. Just the simple task of centering an element has pages dedicated to it and to my knowledge, only CSS3 has a reasonably workable solution. As far as LaTeX's abilities as a programming language go, I have an interpreter for a reasonable subset of C written in TeX (it was an academic exercise but this is just to show what is possible). So it is much more than a mere markup language.
- brundolf 6y ago> For example it is nearly impossible to say, put a box 2/3 of the width of a container of unknown width. Just the simple task of centering an element has pages dedicated to it and to my knowledge, only CSS3 has a reasonably workable solution. It's been a few years since you used CSS :) Both of these things are trivial to do now But to be clear: while I think my CSS experience would give me a grasp of what needs to be expressed and some ideas for how to express it, there is a whole other layer of actually applying that, and reconciling it with the content, which would be a challenge (and is done for you by the browser in CSS' case) > As far as LaTeX's abilities as a programming language go, I have an interpreter for a reasonable subset of C written in TeX (it was an academic exercise but this is just to show what is possible). So it is much more than a mere markup language. I believe you, but I also question whether that level of power is actually being used by people making documents with it, or whether it just adds complexity. I genuinely don't know. But those are the kinds of places one might find improvements to be made.
- disgruntledphd2 6y agoIf you actually want to do this, then start by reading the TeXBook, by Knuth. I would love to work on this, but definitely can't commit the time.
- zzless 6y agoI would like to second this great advice. A somewhat shorter piece of reading is 'Mathematical typography' by Knuth (published in the Bulletin of the AMS but I believe is freely available online). This article outlines the (enormous) scope of the problem (even before multilanguage typography is considered, or any graphics for that matter).
- jcranmer 6y agoThere's kind of two steps to the process: the composition of text, and then the fine-tuning to make the composed text look neat. These two steps are not so easily divorced from one another, though, especially when you're dealing with multiple rounds of edits, so it doesn't work too well to force these to be separate tools to deal with the task. There's a lot of competitors to the first step, in the vein of having multiple tools that are plain-text files but convert to rich-text output. However, most of these tools lack good, or even any, support for the fine-tuning capabilities. Where there is competition in the fine-tuning space, the relevant tools are largely based on WYSIWYG editors--which makes sense when you consider that it's easier to fine-tune properties when you get immediate visual feedback on what the fine-tuning you're doing does to the result. But these editors don't provide an easy way to integrate in the workflows of the other tools, since the underlying formats don't really support the fine-tuning capabilities.