[HN Gopher] LaTeX3: Programming in LaTeX with Ease (2020)
___________________________________________________________________
LaTeX3: Programming in LaTeX with Ease (2020)
Author : nequo
Score : 65 points
Date : 2023-07-31 14:23 UTC (8 hours ago)
(HTM) web link (www.alanshawn.com)
(TXT) w3m dump (www.alanshawn.com)
| coliveira wrote:
| Just to clarify, this is not a new version of the TeX engine or a
| new language, it is a new set of macro interfaces that one can
| use to implement features in the LaTeX macro package. It provides
| certain facilities that make it easier to write larger macro
| packages for users.
| hfkwer wrote:
| I'm a math professor. I've written articles, books, lecture
| notes, exams, exercise sheets, presentations... with latex. Hell,
| even a custom class for a journal I participate in.
|
| I hate this language with a passion. The design choices may have
| made sense in the 80s when 128 kB of RAM was considered high-end,
| "tooling" was an unknown term, and modern parser design an
| academic matter. If I have to read "Runaway argument" and sift
| through a hundred lines of log to find an error again I will have
| a stroke.
|
| LaTeX3? I have great admiration for the work they've done. But
| they have made at least two mistakes.
|
| 1. The fundamental mistake of insisting on backwards
| compatibility. Latex is choke-full of historical cruft. How many
| times have I read things to the effect of:
|
| "Oh, you want an inline list? And you're using the inline-list
| package?! You poor fool! You should be using inllst3 with the
| xtabl option. Holy shit, you're using hyperref too?? (Spoiler
| alert: everyone uses fucking hyperref.) You cretin. Well, you
| should load these three other packages in this specific order.
| Then paste these esoteric commands:
|
| \makeatletter\def\tbl@lst#1{\hy@tbl\vphantom{#2}#1\strut\lbl@lst#
| #&!@\makeatother
|
| No, I'm not going to explain what the commands do. Figure it out.
| Documentation? In the texbook. It's not online, you expect Knuth
| to work for free? Go buy it on amazon, you freeloader."
|
| Don't get me started on how to get arXiv to accept your biblatex
| files.
|
| Throw all this into the trash and start anew. There's no other
| good way forward.
|
| 2. The superficial on creating a theoretically beautiful and
| consistent syntax that is designed for computers, not for humans.
|
| Seriously, go to the authors' website, the "LaTeX3 examples" page
| https://www.alanshawn.com/tech/2020/05/25/latex-3.html#examp....
| Here's how you multiply a length by a float and store it
| somewhere. \cs_generate_variant:Nn \fp_set:Nn
| {Nx} % #1: input name % #2: output name %
| #3: factor \cs_set:Npn \__multiply_length:NNn #1#2#3 {
| \fp_set:Nx \l_tmpa_fp {\dim_to_fp:n {#1}} \fp_set:Nx
| \l_tmpb_fp {\l_tmpa_fp * #3} \dim_set:Nx \l_tmpa_dim
| {\fp_to_dim:n {\l_tmpb_fp}} \dim_set_eq:NN #2
| \l_tmpa_dim }
|
| How anyone can look at this and think "that's the proper way of
| doing things" is beyond me.
|
| I've started writing stuff with msword and I honestly like it
| better. Even UTN28 kind of makes sense. Yes, I'm expecting a
| fight after writing this.
| MayeulC wrote:
| Oh, I'm with you on a lot of things here, and I've just typeset
| my PhD manuscript with it, being a longtime (10 years) user.
|
| LaTeX does not feel like a programming language. It is first
| and foremost designed as a macro language, which is nice for
| writing text, not that much for implementing algorithms.
|
| I quite like what lualatex is doing, including a lua
| interpreter to add some simple code to your document, and make
| writing packages easier. I admit I haven't used yet, being
| afraid of compatibility issues. I know a friend also uses a
| package to interoperate with python.
|
| This doesn't completely solve my main gripes with LaTeX though,
| including the slow compilation speed (while 95% could be
| cached), and the bad error messages, as well as the brittleness
| of the programming part (I ended up typesetting my manuscript
| in 9pt because I forgot a comma after the previous
| documentclass argument).
|
| And the adoption is slow, packages stick to the most compatible
| baseline.
|
| Maybe the future really is to restrict LaTeX use to minor parts
| of the text, like Markdown (pandoc?). But there's still some
| value in having a plugin system that doesn't require additional
| dependencies.
| bee_rider wrote:
| The only thing I really don't like about LaTeX is the slow
| compilations, which could I guess be solved by caching or
| breaking up my file.
|
| OTOH, I'm of sure to what extent this slow compilation is
| actually just a symptom of something bad in the language.
| I've included a bunch of packages in my file, which probably
| slow down compilation, due to the fact that they have to deal
| with ancient cruft.
| chaxor wrote:
| There's a modern way of doing things now that's much simpler.
| Just use markdown, and then convert to PDF with pandoc.
|
| Oh, right, you want to be able to comment on it in a nice way,
| and not everyone in the group is super familiar with git, so
| you can just use a self hosted overleaf for the comments. Oh,
| that's actually for latex, so just use markdown->latex->pdf,
| and now everyone can comment easily.
|
| Oh shoot, nevermind, the latex comments aren't the original
| source, so the comments won't sync right. Easy, just make a
| custom script to make the comments as part of a git commit to
| the repo with the markdown, in a format that can re-apply the
| comments when they're pulled and synced with the latex. Sure,
| that will work :/.
|
| You want easy version control of image placement too? No
| problem, markdown can work with css as well, so just add that
| into your markdown file wherever needed.
|
| This is so much easier, right?
|
| Right?
| thangalin wrote:
| My Typesetting Markdown series goes into creating a number of
| scripts that use pandoc, knitr, and a YAML interpolator to do
| just that:
|
| https://dave.autonoma.ca/blog/2019/05/22/typesetting-
| markdow...
|
| Later, I wrote KeenWrite, which is both a GUI and command-
| line application for converting Markdown documents to PDF.
| KeenWrite separates the content layer from the presentation
| layer and uses ConTeXt to do so. I've tried to keep my
| software backwards compatible with pandoc.
|
| https://github.com/DaveJarvis/keenwrite
| IshKebab wrote:
| I would try Lyx. No need to deal with Latex errors and its
| equation editor is actually worth using (unlike literally every
| other equation editor).
|
| TeXmacs is another option. No idea if it's any good - I always
| ignored it based on the name because it sounds like some kind
| of Emacs based Latex editor but it's actually nothing to do
| with Emacs and not based on Latex. Terrible name. Might be good
| though.
| bobbylarrybobby wrote:
| Ha, glad to see I'm not the only one. LaTeX math is great, the
| rest should be thrown out. Something like Asciidoctor is
| perfectly fine for creating "serious" documents and supports
| LaTeX.
| diarrhea wrote:
| Great rant, and on the money. Made my day! Thank you.
| SantalBlush wrote:
| I may be crazy, but I would love a functional language that
| compiles to LaTeX, BibTeX, and pgfplots--like the Elm language,
| but for typesetting. At least that way, once a document
| compiles, we could get some guarantees about its behavior, no
| matter what data we feed to it. Overflows would be handled
| however we define them, and the document would still produce
| _something_.
|
| The reason I say this is because every document I produce in
| the TeX family needs to be tweaked slightly depending on the
| text and data I compile with it, or else it either won't
| compile or something will get visually screwed up. At least
| with strong typing I can get useful error messages and better
| control of the behavior throughout the whole document.
| WillAdams wrote:
| It's an interesting idea --- fundamentally a typeset document
| is nothing but nested key value pairs where there are:
|
| - tags/formatting large --> small, document --> paragraph -->
| character-level
|
| - content which is tagged
|
| I find that if one just finds all the "right" packages and
| uses appropriate markup it mostly "just works", if one then
| adds a pair of packages:
|
| - one which defines all the additional markup beyond the
| initial author markup as empty commands
|
| - a second which redefines all those commands to achieve the
| formatting
| fabiensanglard wrote:
| I have written three books in Latex and I also hate it. I am
| thinking of a fourth one but I don't think I can take another
| of these night trying to figure out why the lines in a table
| don't connect.
|
| At this point I will try anything else.
| coliveira wrote:
| Latex doesn't require you to learn how to multiply two lengths!
| The beauty of LaTex is that it makes the simple things easy and
| hard things possible. If you don't like programming in TeX,
| great, just use a package that does what you want or use the
| defaults of the language. People who really care about the fine
| details of how the document looks can count on the TeX engine
| to do that (after reading Knuth's book). Everybody else can
| still take advantage of the great quality of the results.
| kaba0 wrote:
| You might like Typst. It is a new language, new tooling that
| actually learned its lessons, and while its community won't
| magically replace all the cruft that came from the LaTeX world
| overnight, I think it might have already managed to get a
| critical mass and it can be the next chapter of scientific
| papers (among other use cases)
| hfkwer wrote:
| Do any scientific publishers accept it?
| chungy wrote:
| > I've started writing stuff with msword and I honestly like it
| better.
|
| Give TeXmacs a try. You don't need to suffer between Word and
| LaTeX :)
| hfkwer wrote:
| The appeal of word isn't the WYSIWYG aspect. It's that... it.
| just. works. You want a table? There's only one way to make a
| table, and it works. You want to insert an image? It f*cking
| works. You want to format running headers a certain way?
| Believe it or not, it works! No weird incompatibilities
| between packages. No delving through the depth of 1990-era
| latex library code to figure out where the weird space comes
| from. Everything just works! And there's documentation
| online! Written for humans!
|
| Trust me, writing code is not the issue with latex. I've
| written C++ code for embedded MCUs. I've taught python to
| undergrads. The pain does not even compare.
| chungy wrote:
| The disadvantage of Word is that it has absolutely terrible
| output and quite a lot of use cases are hard or impossible
| to use in it.
|
| Don't let the name fool you. TeXmacs won't make you write
| (La)TeX. You'll get tables that work, images that work,
| hyperlinks that work, running headers that work, math that
| works, kerning that words, hyphenation and justification
| that work. (From math forward are major failure points in
| Word)
| eldaisfish wrote:
| >The disadvantage of Word is that it has absolutely
| terrible output
|
| This is a moot point if most people are reluctant to pick
| up latex and those who do are greeted by often
| unreadable, esoteric code that produces error messages
| such as "badness". This is _the_ problem with latex and
| its derivatives, not their output.
| chungy wrote:
| TeXmacs isn't a derivative of LaTeX. It has an
| unfortunate name. It is a WYSIWYG editor that produces
| comparable output. It does support some subset of (La)TeX
| backslash commands as convenience, but requires none of
| them.
|
| Basically you get all the advantages of Word, all the
| advantages of (La)TeX, and none of the disadvantages of
| either.
| kaba0 wrote:
| For anything more complex, world utterly fails when you
| inadvertently edit a column of that table, that will break
| page 533 beyond recognition.
| hfkwer wrote:
| Do you have anything to contribute beyond rehashing
| memes? I can have a go at it too: better not miss a
| bracket on line 2000 of your document, otherwise latex
| will complain about a runaway argument in a different
| file and you'll have to sift through the whole thing to
| find where the error is.
| kaba0 wrote:
| But you at least get an error before you print your whole
| work! Like, the two is absolutely incomparable.
|
| The sad part of Word is that even professionals mess it
| up constantly, because you have many ways to reach the
| same goal, and that every addition affects the whole
| document, or in some fortunate cases only the part till
| the next page break. But silent breakage is the worst, as
| is quite clear from any kind of programming background.
| Imo, Word just doesn't scale due to this.
| esalman wrote:
| While we're at it let's stop using PDF files too /s
| hfkwer wrote:
| Not sure why you're being sarcastic. PDF is terrible for
| anything other than printing documents.
| kaba0 wrote:
| It is perfect for its job, and nothing else comes even
| close to it.
|
| https://news.ycombinator.com/item?id=36948776
| esalman wrote:
| Yet they persist. So does latex, even in 2023. There is
| intrinsic value in both that OP does not want to
| acknowledge.
| hfkwer wrote:
| And mp3 persists despite being inferior to any
| alternative. The reason isn't intrinsic value, it's
| inertia.
| nequo wrote:
| There's a variant of arXiv.org called ar5iv.org which renders
| papers in HTML5 instead of PDF. It is very handy when reading
| papers in a browser and it is generated from the same LaTeX
| files. You just need to replace the "x" with "5" in the URL:
|
| https://arxiv.org/abs/1807.11408
|
| https://ar5iv.org/abs/1807.11408
| esalman wrote:
| Nice, thanks. I knew of arxiv vanity as well-
| https://www.arxiv-vanity.com/papers/1708.06733/
| kaba0 wrote:
| Why would I want completely broken layouting instead of
| artfully crafted one? PDF does its job absolutely well,
| sure it won't accommodate to your screen but there is no
| automatic way of laying out the content in a way that it
| makes sense both semantically, and from a design
| perspective. That figure 10 pages down is completely
| useless, I want to see it when it is referenced in the
| text. I really have a hard time reading anything that
| requires more formatting that a novel in anything else than
| properly rendered PDF.
| nequo wrote:
| I don't really understand. Which figure is 10 pages down
| in the example that I linked?
| queuebert wrote:
| While LaTeX's future replacement could certainly learn a lot from
| modern languages like Markdown, I hope that the creators will use
| as much rigor in designing the typesetting system as Knuth did.
| Part of LaTeX's success was the absolutely beautiful documents it
| can make with nothing but a personal computer. For example, to
| compute line breaks, it solves an optimization problem over the
| whole page.
| thangalin wrote:
| > 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 of the 1990s.
| I'm not sure if I'd call Markdown "modern". Quite popular
| though!
|
| > 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. I specifically avoided integrating
| LaTeX.
|
| https://github.com/DaveJarvis/KeenType/tree/main/tex/src/mai...
|
| My Markdown text editor, KeenWrite, uses KeenType to preview
| math in documents.
|
| https://github.com/DaveJarvis/KeenWrite/blob/main/docs/scree...
|
| When exporting to PDF, KeenWrite uses ConTeXt to typeset the
| final document. ConTeXt being another TeX-based system. This is
| the reason why KeenWrite only uses TeX: to give users the
| ability to choose what TeX flavour to use for typesetting the
| PDF.
|
| https://wiki.contextgarden.net/Main_Page
| coldtea wrote:
| 2004 is still modern era of computing - and far more recent
| than TeX which is half a century ago. And, creation date
| aside, its wide adoption is even more recent.
| coldtea wrote:
| The problem I see is not rigor, it's more that there's no
| realistic chance we'll ever see that next system available in
| our lifetimes...
| WillAdams wrote:
| There is hope that/ongoing research into the algorithm (so that
| it) will be extended beyond the paragraph/page and will allow
| the sort of optimizations/adjustments which are necessary.
|
| In almost 4 decades of typesetting, I've had a chapter come out
| exactly right, requiring no adjustment exactly _once_ (fastest
| 40 minutes of my life) --- the usual approach is after:
|
| - importing the text and all the images, paging everything with
| the defaults
|
| one has to:
|
| - check the last page --- is it reasonably full? is the page
| which it is ending on acceptable --- would it be better to gain
| or lose a page?
|
| - from the beginning, check each image/table --- where do they
| fall relative to the first reference? What needs to move to
| what page? Make gross adjustments to make that happen where
| possible (resizing images/tables/tweaking placement, if the
| book design allows, change image/table type/appearance to
| adjust things
|
| - see where one falls at the end of the chapter --- last page
| full enough? Would it be desirable to gain/lose a page?
|
| - go back to the beginning, begin fine tuning each page/spread
| --- are there any paragraphs which don't look nice? (setting
| too tight/loose, rivers, stacks, &c., adjust as needed), do the
| bottom lines line up? adjust paragraph specs/image size to make
| them line up (keeping in mind if one wants to gain/lose a page)
| --- do this for each page/spread
|
| - check the last page --- repeat any of the above adjustments
| as necessary --- sometimes, while one might want to gain a
| page, a tighter setting losing a page looks sufficiently better
| that it's worth un-doing all the tweaking an re-setting thus
| taeric wrote:
| Oddly, I would cite Knuth's rigor in stability as much as in
| rigor of algorithm choice and creation.
|
| Specifically, TeX still works well today because of deliberate
| choices to not break things. He is well aware of modern
| techniques for many of the things that people complain about.
| He likes that he can still build every one of his documents
| today, with no concerns over things having "moved on to better
| ways."
| trostaft wrote:
| I write LaTeX pretty much every day (math graduate student), and
| I like LaTeX quite a bit. It's a piece of software that solves a
| difficult problem, and after the (admittedly nearly vertical)
| learning curve, you can quite easily produce beautiful documents
| with it. It's a reproducible, programmatic solution. However, it
| is also clear that there's quite a lot of legacy pains within the
| language, much of which occurs when trying to stretch the macro
| system.
|
| If you're interested in this (and already know LaTeX), consider
| reading the full expl3 design document:
|
| https://texdoc.org/serve/expl3/0
|
| I don't know if LaTeX is what I'll be writing in the future (at
| least, hopefully not in its current incarnation). I'm keeping my
| eyes open for a language with a similar design philosophy, but,
| frankly, it's a monumental effort to write anything similar, let
| alone build the community around it (packages, but also journal
| styles, etc.).
| borg16 wrote:
| > and after the (admittedly nearly vertical) learning curve,
| you can quite easily produce beautiful documents with it.
|
| what helped you get over this curve?
| psychoslave wrote:
| I didn't write any latex for a very long time now, but by the
| time I went through a master in CS, I had my laboratory
| advisor asking "how did you make this?"
|
| A good answer I didn't thought at the time but that will
| aplly equally here: curiosity powering the will to read more
| documentation.
| jyunwai wrote:
| Though I'm not the same commenter, I personally got over the
| curve by learning from the https://latex-
| tutorial.com/tutorials/ website recommended by my professor
| of a math course, and then by learning how to use the Vim
| text editor with LaTeX. I also gained practice as the math
| course happened to require students to submit weekly problem
| sets in LaTeX.
|
| ~~~
|
| The first stage was to learn from the LaTeX Tutorial website,
| which includes a detailed tutorial with no paywall [1]. I
| paid the closest attention to tutorials 00 to 05 for the core
| functionality, then skimmed the rest of the tutorial, as I
| would only rarely use the remaining features. (For tables,
| even after gaining a general familiarity with how the tabular
| environment work, I still found it faster to use the Tables
| Generator website [2], which was also recommended by my
| instructor.)
|
| I then gained practice using TeXstudio as the software to
| convert LaTeX code into PDFs (as I preferred an offline
| program), though my professor and most of my fellow students
| used Overleaf as an online editor. However, I found that I
| spent a lot of time transcribing handwritten problem sets
| into LaTeX documents on TeXstudio and Overleaf, and searched
| for a faster and more pleasant method (in particular, I found
| that there was a significant delay in my experience when
| compiling LaTeX code to a PDF with TeXstudio and Overleaf).
|
| ~~~
|
| Speed and ease-of-use were therefore my sources of my
| motivation for learning how to use Vim with LaTeX, though you
| should have enough knowledge for effectively writing LaTeX
| documents with just the information from the LaTeX tutorial
| website. I was also motivated due to my curiosity about Vim
| in general, from past discussions on the text editor in an
| xkcd comic and various forum discussions.
|
| To begin the learning process for Vim, I completed the
| default-installed tutorial "vimtutor" (also motivated because
| I was curious about Vim in general, from past discussions on
| the text editor in an xkcd comic and various forum
| discussions) over a weekend day. Crucially, I followed most
| of the advice from a Hacker Noon article [3] about more
| efficient ways to scroll up and down. I then edited the
| .vimrc config file to allow for using the cursor for
| highlighting text to keep things simple, using most of the
| default configurations for Neovim.
|
| Then, I roughly followed E.J. Mastnak's guide at [4] to get
| set up, over the course of another weekend day. After some
| troubleshooting with the configuration, I finally got the
| setup to work, and I've happily been using Vim with LaTeX
| since then. Since the process reduced the friction to compile
| LaTeX code to a PDF, I compiled my document more often, so I
| could catch errors early and often (I rarely spend time
| troubleshooting and debugging LaTeX code now, since I now fix
| errors shortly very after they appear, as I compile the
| document every few lines of code or so).
|
| The main major drawback of using Vim and LaTeX was that I
| followed the advice to enable autocompletion with snippets
| (e.g. typing "AA" automatically types in "\forall") via the
| the UltiSnips software, which would make substitutions
| without an audible notification (in contrast to other
| software that I use to make snippets outside of Vim, that
| would make an audible ping before a substitution). That led
| to some significant typos in an early assignment I submitted,
| and I since learned from my mistake to be far more careful
| when using Vim with LaTeX for enabling snippets. However,
| snippets also functioned as a nice learning tool, as I would
| learn through practice what some basic commands would be,
| through the auto-substitution (for example, I've now easily
| remembered through exposure that <= is written as `\leq`) in
| LaTeX.
|
| ~~~
|
| To conclude, you can use free tutorials to learn the basics
| of LaTeX, and use Overleaf and TeXstudio to practice. For
| additional speed and pleasantness, you can spend a couple
| focused weekend days (or possibly more) to learn how to use
| Vim with LaTeX following another free guide. Then, you can
| reinforce your learning through regular practice (in my
| experience, my regular practice was necessary due to
| requirements of a math course--if your work or education
| similarly requires LaTeX, a real-life necessity is a great
| motivator for practicing document production with LaTeX).
|
| [1] https://latex-tutorial.com/tutorials/
|
| [2] https://www.tablesgenerator.com
|
| [3] https://hackernoon.com/learning-vim-what-i-wish-i-
| knew-b5dca...
|
| [4] https://www.ejmastnak.com/tutorials/vim-latex/intro/
|
| [5] https://github.com/gillescastel/latex-
| snippets/blob/master/t...
| QuadmasterXLII wrote:
| The most common way to learn is to co-author a paper with
| someone who's proficient- but that's an expensive resource!
| mettamage wrote:
| Not a math student, used to be a CS master student (with not
| so great math skills). For me, it took 40 hours to learn with
| Overleaf/Sharelatex (or whatever they're called nowadays).
|
| Just creating many small proof of concept thingies, and
| slowly building them out. I did this until I was comfortable
| enough. After 40 hours of learning it, I was about 90% as
| fast as typing in MS Word. There was one difference though,
| LaTeX made me way more structured because I commented at
| every paragraph what the intention of that paragraph was. So
| my writing became way more focused.
| velcrovan wrote:
| Skip it and go straight to Typst.
|
| https://github.com/typst/typst
|
| https://github.com/qjcg/awesome-typst
| dr_kiszonka wrote:
| Would you happen to know if it is possible to convert an
| existing Latex document into Typst?
| velcrovan wrote:
| You could do it with Pandoc (https://github.com/jgm/pandoc),
| it supports both Latex and Typst as input and output formats,
| and can use either as a PDF engine.
| dr_kiszonka wrote:
| Great - thanks so much!
| distcs wrote:
| LaTeX is a de-facto standard in academia and journals. Makes it
| very hard to just skip and go to Typst or any of the other
| recent takes on math typesetting.
| wenc wrote:
| Looks interesting and I could see this being adopted in limited
| situations. Most Latex users only use a tiny subset of its
| capabilities. Most non-math journals also easily accept non
| Latex manuscripts. The math part seems similar to Latex
| (without backslashes) which is important since most folks have
| built muscle memory there (not just for documents but also for
| typing math in other situations like Markdown docs and Mathjax
| or KaTeX websites)
|
| The only issue is the ecosystem for specialized fields with
| their own typesetting requirements.
|
| But I'm all for anything that is easier to debug than Latex.
|
| That said I feel it will never truly compete with LaTeX in
| terms of adoption. LaTex is like SQL -- it's long in the tooth
| and has some minor design issues but represents something very
| fundamental that defies reinvention.
| chaxor wrote:
| This looks neat.
|
| I noticed it has a scripting language built in, but how might
| one use already made scripts in another language? For example,
| if I already have a make_plot.py script, can I just call it
| instead of rewriting everything in this new scripting language?
| It seems that this functionality would be absolutely crucial
| for adoption, but there's nothing but complaining and
| disagreement on the issue raised on this in the GitHub.
| benterix wrote:
| Thank you for this, I might consider it for my next paper - it
| seems great at a first glance.
|
| Do you use it on a daily basis? Any problems I should be aware
| of? I see quite a few open issues - do they actually matter?
| lugao wrote:
| I've utilized it to craft a number of high-school level
| mathematics and physics problems and solutions, and the
| experience was genuinely pleasing. The scripting language
| brings a fresh perspective to the markup language, while the
| plugin ecosystem is steadily expanding and improving.
|
| Though I don't have firsthand experience in formatting
| documents to meet publication standards, the flexibility it
| offers seems promising for such applications.
|
| My sincere hope is that it garners the recognition it truly
| deserves, and that significant publications in the future
| will embrace it, rolling out official templates directly in
| typst.
| wewxjfq wrote:
| It can't embed PDFs and there doesn't seem to be a solution
| in sight, because they want to keep their software stack
| working in the browser. It supports embedding SVGs, but
| converting PDF to SVG never works well, so the only reliable
| option is to render the PDF to high-DPI PNG.
|
| The font subsetting seems to be suboptimal. I had small
| documents that were a megabyte when they should have been a
| few kilobytes. This however can be fixed with PDF tools.
| RyEgswuCsn wrote:
| I kind of hoped that new contenders to LaTeX could ditch the
| state-based sections (e.g. `\section{Introduction}`) and switch
| to strictly scoped sections that are properly closed (i.e.
| section trees).
| xigoi wrote:
| Sections in my markup language work like that. I definitely
| find it a better approach.
|
| https://xidoc.nim.town/commands.html#section
| taeric wrote:
| HTML is evidence that having to do a closing tag is an
| amusing non-starter for authored pages. Such that I don't see
| that flying too well.
| 13415 wrote:
| The problem with HTML is that you name the tags and can
| close them anywhere.You could have something like this
| instead: \section{Introduction}{ .
| . . }
| taeric wrote:
| I get the motivation. I'm not sold on the results.
| Especially since you will have a ton of machinery around
| what sections can go in other sections. It really is
| nicer to not have the brackets.
| psychoslave wrote:
| Sure, but a single pair of parentheses is enough:
|
| [section[Introduction][...]]
| diarrhea wrote:
| Good point, never thought of that. Indentation would become
| hellish though.
| [deleted]
| bombcar wrote:
| Every time I've tried to stray from LaTeX 2e to something else
| TeX or TeX adjacent such as LaTeX 3 I've always found that
| programmatically generating LaTeX 2e is easier for me, often
| because I don't have time to learn how to do it "properly" or the
| macro packages I want to use aren't available, etc.
| TheRealPomax wrote:
| I have a similar experience with XeLaTeX. The "it's not unicode
| unless you jump through hoops" and "oh you want to use opentype
| fonts? I'm sorry to hear that" of plain LaTeX2e always make me
| go back to XeLaTeX instead.
| chaosite wrote:
| So, someone will probably correct me further but:
|
| You're still using (mostly the same) plain old LaTeX 2e with
| pdftex, xetex, and luatex (pdflatex, xelatex, and lualatex).
| Those are just 3 different engines for Knuth's original tex.
| As far as I know, some parts of all 3 are written in WEB
| (which is a language that persists mostly because Knuth's TeX
| is written in it).
| hfkwer wrote:
| While what you're saying is true, I get the feeling that
| you want to say that this is in contrast to LaTeX3, which
| isn't "plain old LaTeX 2e". Except... that it is. The
| project to have a new engine has been scrapped a long time
| ago. LaTeX3 is just another layer above LaTeX 2e. With all
| its cruft.
| TheRealPomax wrote:
| Note that LaTeX2e is just a set of commands, a bunch of
| which are absolutely ridiculous to use in plain LaTeX, and
| simply not used when using LaTeX in conjunction with XeTeX
| as engine, because XeTeX can do things that plain TeX just
| can't, and so all the insanity that LaTeX2 had to invent to
| make TeX "do things it was never designed for" simply
| aren't used when you're writing XeLaTeX documents. Like
| everything being Unicode by default, no
| packages/macros/special affordances required. Including not
| needing stuff like \hat{...} or \grave{...} because those
| make no sense when everything's Unicode: just write text.
| Or having direct font access instead of needing to go
| through the horrendously outdated TeX font metric concept.
___________________________________________________________________
(page generated 2023-07-31 23:02 UTC)