Sile – Simon's Improved Layout Engine(github.com)
github.com
Sile – Simon's Improved Layout Engine
https://github.com/simoncozens/sile
29 comments
The things that make TeX and its offspring so sticky are:
Similarly, does it improve on some of the annoyances of using Tex? It would be nice if I could use my system fonts for typesetting.
Another way to improve adoption would be to look into adding a reader/writer for Pandoc, although that sounds like a complicated venture.
- amazing library availability
- decent quality purpose-built tooling
- massive online support community
- endlessly extensible
- beautiful out-of-the-box math support
All but the latter two are out of the developers control. But the latter two will beget the rest. What is math support like? And how easy is it to write extensions/plugins/packages, create templates/styles, etc.?Similarly, does it improve on some of the annoyances of using Tex? It would be nice if I could use my system fonts for typesetting.
Another way to improve adoption would be to look into adding a reader/writer for Pandoc, although that sounds like a complicated venture.
Well, XeLaTeX is what you want to use TTF/OTF while preserving TeX compatibility. It's very stable; I use it for my word processing.
As I see it, there are three major issues with TeX:
1. It's very difficult to compose commands (macros? I don't remember the terminology despite having written a small TeX clone) without understanding how they work. I found it very difficult to understand without re-implementation and a lot of reading of the TeX book.
2. Because of 1, it is easy to shoot yourself in the foot by command misordering or not specifying a necessary closing macro.
3. Debugging is very difficult. The error messages are obstruse and make dealing with 2 very difficult.
If a layout system managed to address these issues, even by targeting TeX, as pandoc does, many people could deal with some loss of flexibility.
However, if you do learn the technology, you can do pretty much anything in print with TeX.
As I see it, there are three major issues with TeX:
1. It's very difficult to compose commands (macros? I don't remember the terminology despite having written a small TeX clone) without understanding how they work. I found it very difficult to understand without re-implementation and a lot of reading of the TeX book.
2. Because of 1, it is easy to shoot yourself in the foot by command misordering or not specifying a necessary closing macro.
3. Debugging is very difficult. The error messages are obstruse and make dealing with 2 very difficult.
If a layout system managed to address these issues, even by targeting TeX, as pandoc does, many people could deal with some loss of flexibility.
However, if you do learn the technology, you can do pretty much anything in print with TeX.
The things that make TeX and its offspring so sticky are:
I agree with your list, but I think you overlooked another crucial one:
TeX is one of the most remarkably bug-free and stable pieces of software ever written.
For all its quirks, you can take a .tex file written for an academic paper 30 years ago, and you can run it through a modern TeX implementation today, and there's a good chance that your output will be identical for all practical purposes. Just about everything about TeX and its supporting infrastructure is rigorously specified, robustly implemented, and of course incredibly well documented.
In the era of moving fast, breaking things and pretending it doesn't matter, many dev teams could learn a great deal from TeX's priorities. Given the momentum behind the TeX world now, I suspect that anyone who wants to offer a more modern alternative is going to have to clear that bar as well (and I hope this project does, because it seems to have a lot going for it in other respects).
I agree with your list, but I think you overlooked another crucial one:
TeX is one of the most remarkably bug-free and stable pieces of software ever written.
For all its quirks, you can take a .tex file written for an academic paper 30 years ago, and you can run it through a modern TeX implementation today, and there's a good chance that your output will be identical for all practical purposes. Just about everything about TeX and its supporting infrastructure is rigorously specified, robustly implemented, and of course incredibly well documented.
In the era of moving fast, breaking things and pretending it doesn't matter, many dev teams could learn a great deal from TeX's priorities. Given the momentum behind the TeX world now, I suspect that anyone who wants to offer a more modern alternative is going to have to clear that bar as well (and I hope this project does, because it seems to have a lot going for it in other respects).
If you use pure TeX, yes. However, most people use LaTeX and a lot of packages. Those break all the time.
Perhaps a better link: http://sile-typesetter.org/what-is/
Does it support complicated things like sharing baselines between arbitrarily complicated box structures which are positioned side by side?
Does it matter?
For being pitched against InDesign, yes. Document, page, and per-frame baseline grid alignment is a standard feature in InDesign and Quark. Scribus and even Publisher do document-wide baseline alignment.
[deleted]
arbitrarily? No.
reasonably? Probably.
reasonably? Probably.
Sadly, the show-off link doesn't work.
According to the issue someone opened (https://github.com/simoncozens/sile/issues/483), it's available at:
https://github.com/simoncozens/sile/blob/558d35d45e1fee89860...
https://github.com/simoncozens/sile/blob/558d35d45e1fee89860...
Not to rain on their parade, but... sweet Jesus, the leading, kerning and tracking in that show-off pdf is absolutely abysmal!
No ligatures, apparently no math support whatsoever, no support for floating figures, no cross-references, no bibliographies, no table of content, no tables even...
Apart from printing bibles (which they mention), I'm having a hard time seeing where this is an improvement over TeX for the end user. Also strange that their comparison with (luaLa)TeX doesn't mention ConTeXt.
No ligatures, apparently no math support whatsoever, no support for floating figures, no cross-references, no bibliographies, no table of content, no tables even...
Apart from printing bibles (which they mention), I'm having a hard time seeing where this is an improvement over TeX for the end user. Also strange that their comparison with (luaLa)TeX doesn't mention ConTeXt.
That show-off document is also more than 2 years old.
Aside from unfortunate aesthetic, and puzzling practical issues (like no attempt to replicate TeX's math support), something about the overall tone of the docs and Cozens' web presence would discourage me from making an investment of time in one of his projects. YMMV.
Jeffrey Kingston's Lout was a more convincing experiment but it's sadly no longer adequate for complex or multilingual work, due to limitations in the 90s implementation.
Jeffrey Kingston's Lout was a more convincing experiment but it's sadly no longer adequate for complex or multilingual work, due to limitations in the 90s implementation.
"something about the overall tone of the docs and Cozens' web presence would discourage me from making an investment of time in one of his projects."
I'm not sure I understand that assumption. He's been around the OSS community for decades (wrote some O'Reilly books about Perl, and wrote quite a few Perl modules, though that was more than a decade ago, and I dunno what he's been up to since). I do find the github a little sparse, but there is a website for SILE, which is better: http://sile-typesetter.org/what-is/
It looks like a personal project, rather than a "take over the world" attack on TeX. Seems like if it's an area that's interesting for someone, they might want to have a look. It does have some novel ideas over TeX, and is maybe more modern in some of its implementation details, even if it is nowhere near as complete or mature as LaTeX.
I'm not sure I understand that assumption. He's been around the OSS community for decades (wrote some O'Reilly books about Perl, and wrote quite a few Perl modules, though that was more than a decade ago, and I dunno what he's been up to since). I do find the github a little sparse, but there is a website for SILE, which is better: http://sile-typesetter.org/what-is/
It looks like a personal project, rather than a "take over the world" attack on TeX. Seems like if it's an area that's interesting for someone, they might want to have a look. It does have some novel ideas over TeX, and is maybe more modern in some of its implementation details, even if it is nowhere near as complete or mature as LaTeX.
Math support wasn't his personal priority. From the FAQ:
"Does it support mathematics?
Not yet. I understand that mathematics is important in scientific typesetting, but SILE is targeting a particular niche in the humanities. That said, it's not impossible, and it should not be difficult for someone to port MathJax from Javascript to Lua and implement mathematical typesetting as an add-on package."
I don't see what is particularly puzzling about implementing the things that matter to you personally, and leaving other things to contributions. I especially don't see a problem with leaving things to add-on packages if it's possible to leave them out of the core. Papers with complex math in them are a pretty small percentage of the overall number of books/articles in the world.
Also I like the aesthetic. YMMV.
"Does it support mathematics?
Not yet. I understand that mathematics is important in scientific typesetting, but SILE is targeting a particular niche in the humanities. That said, it's not impossible, and it should not be difficult for someone to port MathJax from Javascript to Lua and implement mathematical typesetting as an add-on package."
I don't see what is particularly puzzling about implementing the things that matter to you personally, and leaving other things to contributions. I especially don't see a problem with leaving things to add-on packages if it's possible to leave them out of the core. Papers with complex math in them are a pretty small percentage of the overall number of books/articles in the world.
Also I like the aesthetic. YMMV.
i was sad nonpareil never got done; it looked like it was going to be interesting, and lout was a great proof of ability.
The Sile PDF says
> There is no shortcut for boldface, because boldface isn’t good typographic practice and so we don’t want to make it easy for you to make bad books.
Where/what is that from? Like is that common "knowledge"?
> There is no shortcut for boldface, because boldface isn’t good typographic practice and so we don’t want to make it easy for you to make bad books.
Where/what is that from? Like is that common "knowledge"?
Not really. Generally, ALL CAPS and italic are preferred over bold (as both are specially cut for that, and keep the contrast roughly the same), but bold is not bad either (and for sans serif, always choose bold over italic). Compare with: http://practicaltypography.com/bold-or-italic.html
What you definitely shouldn’t do is underlining, though: http://practicaltypography.com/underlining.html
What you definitely shouldn’t do is underlining, though: http://practicaltypography.com/underlining.html
Both of your links redirect to: http://practicaltypography.com/graylist.html, which lacks useful content
I am not quite sure about it not being good typographic practice, but it's sure weird historically to mix faces of different weights. Furthermore there is already emphasized (italic) text; it's not strictly necessary for prose.
I've read a handful of books where there is some type of bold formatting used, and in each case it was electronic rich text (e.g an email or word document).
I've read a handful of books where there is some type of bold formatting used, and in each case it was electronic rich text (e.g an email or word document).
What is the compilation speed? Tex and its derivatives are really slow. (Whereas e.g. Web browsers typeset documents in milliseconds)
[deleted]
Standout features, according to me:
I'm not in academia and have never found TeX's ecosystem of packages a huge draw, so I don't think I'll miss that much.
The main thing I worry about is stability of interfaces. If people start writing documents and packages that target this, will they continue to work in the future? Is the developer committing to that?
Overall I'm really excited to see this!