Questions tagged [latex-base]

{latex-base} is about the inner workings of the LaTeX kernel. Do not use this tag for general questions about LaTeX or {macros}.

216 questions
33
votes
1 answer

What is .tex file in TeX Live for?

If I run kpsewhich .tex I get /usr/local/texlive/2013/texmf-dist/tex/latex/tools/.tex This file belongs to LaTeX core files and is nearly empty: %% %% This is file `.tex', %% generated with the docstrip utility. %% %% The original source files…
cjorssen
  • 10,032
  • 4
  • 36
  • 126
23
votes
2 answers

Include LaTeX version in document

Is there any command or package to insert the version of LaTeX used to create a document? I am looking for a header or footer in the first page that says something like compiled with pdfTeX 3.1415926-1.40.11-2.2 (TeX Live 2010).
YuppieNetworking
  • 5,919
  • 7
  • 36
  • 40
22
votes
1 answer

What do \@mkboth and \markboth do?

What do the toc related commands \@mkboth and \markboth do?
Matti
  • 1,003
  • 2
  • 10
  • 24
20
votes
2 answers

\@ifnextchar's twin in the kernel

In latex.ltx you can find \let\kernel@ifnextchar\@ifnextchar What was this needed for?
Ruben
  • 13,448
16
votes
1 answer

Use of \trivlist and \list in defining environments

I did ask a similar question a bit back here but never really had a satisfactory technical answer. Reading through the documentation of xdoc Lars Hellstrom pretty much asked the same question and noted in a footnote (page 47), Seriously, can…
yannisl
  • 117,160
13
votes
2 answers

Why is \thepage set to \relax in a \protected@write?

In the kernel the definition of protected@write includes the setting of the \thepage to \relax. Why is this and are there other means to ensure that thepage is not expanded? \long\def \protected@write#1#2#3{% \begingroup …
yannisl
  • 117,160
10
votes
2 answers

What is autoload?

In the LaTeX kernel you see this often: %<*2ekernel|autoload> What does it do? There are other similar marks. Is there any documentation for these?
yannisl
  • 117,160
10
votes
1 answer

Is there a generic dummy command?

I would like to add in the title field of some bib entries a dummy command which I can redefine to force e.g. a linebreak in certain cases. I need a command which normally doesn't do anything, doesn't rely on some specific package (so that the…
Ulrike Fischer
  • 327,261
10
votes
1 answer

Strange behaviour with \AtEndDocument

I'm creating a document class that has draft and final versions. The final version has a front page generated by \maketitle, but in draft mode \maketitle is \let to \relax. I decided to insert a test to ensure that \maketitle is present in final…
Ian Thompson
  • 43,767
7
votes
1 answer

Missing \begin{document}, \count22 and a mathchar give infinite font-loading attempts

After some expected errors (missing \begin{document}, missing number treated as zero, missing $ inserted) the following code produces an infinite loop where LaTeX attempts to load the font ^^@^^@OT1+cmr, the font ^^@^^@^^@OT1+cmr, the font…
6
votes
0 answers

Undefine a command in LaTeX

LaTeX, of course, has a protective mechanism that prevents you from doing some stupid things: \newcommand\a{a} \newcommand\a{b} %% LaTeX Error: Command \a already defined. Of course, if you know what you're doing, then you can circumvent it with…
LSpice
  • 1,448
5
votes
2 answers

Major changes in LaTeX2e/LaTeX3 kernel

Just out of curiosity. If it would be possible to summarize the major changes/improvements in LaTeX2e/LaTeX3 kernel during the last decade, which they would be?
Yorgos
  • 2,694
4
votes
1 answer

latexrelease: Cannot emulate newer kernel

I am trying to emulate LaTeX 2020-10-01 on a system still using LaTeX 2020-02-02 PL 5. I have downloaded the latest version of latexrelease.sty from GitHub. However, the following MWE…
3
votes
1 answer

LaTeX rollback - unexpected behavior

Typesetting this mwe \RequirePackage[2015/01/01]{latexrelease} \documentclass{article} \begin{document} Hello World \end{document} I expect it to be indicated the LaTeX version 2015/01/01 into the log file. Instead I read LaTeX2e <2023-11-01>…
3
votes
2 answers

why You can't use `blank space ' after \the

If I define \newcount\punkt \def\newpt{\the\punkt\space\advance\punkt by 1} everything runs fine; but if I do \newcounter{punkt} \newcommand\newpt{\the\punkt\space\stepcounter{\punkt}} I get You can't use `blank space ' after \the. Why?
jarnosc
  • 4,266
1
2