{tex-core} is for questions that are independent of formats and macro packages. Such questions usually relate to low-level TeX programming or the behaviour of TeX at an underlying level. Note that even Plain TeX is a format in itself; for questions about it, use {plain-tex}.

learn more… | top users | synonyms (1)

14
votes
2answers
169 views

Unicode math at TeX primitive level

I am looking for information how to implement Math OTF font in XeTeX or LuaTeX at TeX primitive level (using XeTeX or LuaTeX primitives). There exist a LaTeX package unicode-math. Unfortunatelly, this ...
14
votes
2answers
259 views

Use TeX macros to store multiple data

I'm trying to use TeX macros to store multiple data such as website url/name. Here is an example : \documentclass{article} \def\Google{{http://www.google.com}{Google Search}} \makeatletter \...
14
votes
1answer
385 views

How to write a two-pass system in TeX?

On page 400 of The TeXbook ("Dirty tricks" part) it is said: An output routine can also write notes on a file, based on what occurs in a manuscript. A two-pass system can be devised where TeX ...
14
votes
2answers
249 views

What is the easiest way to modify catcodes in a string?

Assume that a token register contains a sequence of letter tokens, each having a catcode of 12. I want to store in a second token register the same sequence of letter token, altering some catcodes on ...
14
votes
1answer
304 views

What practices are there regarding the use or avoidance of “internal” TeX or LaTeX commands?

What practices are there regarding the use or avoidance of "internal" TeX or LaTeX commands? (About "command" vs "macro", there is some discussion in this TeX.SX answer, though I don't know whether ...
14
votes
1answer
882 views

How to change \hsize in the middle of a paragraph at pagebreak, especially for two-column?

The original question is: How to get two columns with different width in LaTeX? I know this older question: How can I create a two-column layout with different widths (and texts) for the two columns? ...
14
votes
2answers
753 views

Active characters let to a (non-active) character

It seems that if I \let\amp&, the alignment tab & can be replaced by \amp everywhere (e.g., in the preamble and in the body of an \halign). It is also possible to make the character & ...
14
votes
1answer
201 views

Can one determine the first character of a given math list?

I'm still pursuing my quest to code a better \widebar command. I can do bars over single characters quite well already, but I have problems when it comes to letter combinations such as AW. \overline{...
13
votes
5answers
316 views

Checking if a string contains # with its original catcode

At comp.text.tex the following scheme was suggested for testing if a string contains the parameter character with catcode 6. \def\endcheck{\endcheck} \def\second#1#2{#2} \def\gobbletocheck#1\endcheck#...
13
votes
3answers
769 views

What is Tex's gullet?

Chapter 7 of The TEXbook famously talks of Tex as having 'eyes', 'mouth' and 'stomach' and goes on to talk of Tex's 'digestive processes' and keeps reusing these terms. Chapter 8 introduces talk of ...
13
votes
2answers
281 views

How does math mode work?

When writing an a in TeX, it is typeset as an upright "a" by default. When writing an a in math mode it is typeset in italics. Furthermore, in math mode white spaces are ignored and no empty lines ...
13
votes
4answers
2k views

Dividing dimensions to get a count

Is there a way to divide two dimens and get a count? For example, if I have a box that doesn't fit on a single page, and I want to know the number of pages I'd need for the box (i.e., \heightofbox / \...
13
votes
1answer
1k views

What does the \the\everypar do?

If you test the following minimal it does not produce an error. What does it actually do? \the\everypar \bye Why doesn't it produce an error as one would expect?
13
votes
4answers
863 views

How can I compare two (not necessarily integer) variables?

After experimenting and researching for hours, I still cannot figure out how to perform a simple equality test between two numbers. More specifically, here, the two numbers in question are the ...
13
votes
2answers
881 views

The revenge of the vboxes

Yes, they're back. With a vengeance. Those pesky little buggers we call \vboxes which I've fought against previously. (And Bruno, too.) \parskip=0pt \def\unquo{\unvbox0\smallskip} \def\bquo#{\...
13
votes
2answers
300 views

How are dashes implemented in TeX?

How does LaTeX implement the differences between the dashes? -, --, and --- all print different dashes, but - is not an active character: it has catcode 12, the same as digits like 2.
13
votes
3answers
371 views

Expansion of first token in a tabular cell

Background I currently do some work on the collcell package which collects the content of a tabular/array cell and provides it to a user defined macro, e.g. using >{\collectcell\mymacro}c<{\...
13
votes
2answers
584 views

\expandafter within a \begingroup … \endgroup [duplicate]

Possible Duplicate: What does \begingroup\expandafter…\endgroup do? In many of Heiko Oberdiek's packages one sees this type of construction: \begingroup\expandafter\expandafter\expandafter\...
13
votes
3answers
226 views

Accessing TeX token or exporting filtered plain text

(updated according to gained information) In the context of keyword extraction from arbitrary (La)TeX documents and simple manipulations with them (automated annotation), I would like to be able to ...
13
votes
3answers
829 views

Can I make a command not gobble spaces?

(I'm using ConTeXt, but I suspect the answer will lie in plain TeX.) I've created an environment that takes one argument myBufferName, and stores its contents in a buffer of that name. Unfortunately, ...
13
votes
1answer
986 views

What does \empty do? [duplicate]

What does it do and what are its applications? I am currently testing the subtitle of my beamer presentation for its string length to decide about line spacings. Could it be simpler using \empty? If ...
13
votes
1answer
424 views

Is there a \show for catcodes?

In the course of attempting to out-pedant another mathematician, I wanted to \show the catcode of $ to convince myself that it was a "special" character in ordinary TeX as well as LaTeX. I was just ...
13
votes
2answers
301 views

ifx, macros and grouping

I do not understand how \ifx interacts with macro definitions. Here is a minimal example: \def\a#1{\b} \def\b#1#2{[#1:#2]} \a ABC The output is [B:C], as expected. If I change the definition of \a ...
13
votes
1answer
5k views

Origin and formation to the ERROR ‘Dimension too large’

When I tried to compile: \documentclass{standalone} \usepackage{tikz} \begin{document} \begin{tikzpicture} \draw[very thin, red] (0,0) circle (2); \foreach \i in {0, 1, 2, ..., 46} \draw[very thin, ...
13
votes
2answers
910 views

How to use tex -ini, tex -fmt, initex and fmtutil?

What are the roles of each of these commands? What is the good command to create a new format ?
13
votes
2answers
254 views

Difference between one glue and two glues after each other

Is there a difference between A\hskip 1pt \hskip 0pt plus 1fil B and A\hskip 1pt plus 1fil B ? Are these two glues the same in terms of spacing and (line-)breaking? Or do they just add up, as I ...
13
votes
1answer
142 views

Difference between “hbox group” and “adjusted hbox group”?

eTeX's \currentgrouptype distinguishes two types of \hbox group types \hbox{\showthe\currentgrouptype} % 3 "adjusted hbox group" \noindent \hbox{\showthe\currentgrouptype} % 2 "hbox group" Looking ...
13
votes
1answer
231 views

Array functionality in TeX?

I've been using LaTeX for a while, but only recently I made myself a mission to create a class. I needed to learn the details of TeX, and I couldn't find answers to some of my questions. One of them ...
13
votes
1answer
1k views

How to prevent extra spaces between two specific words when justification occurs?

My document contains many short, justified lines, so the lines often appear with many spaces between words, e.g.: These words have a space so that they can fit nicely into the available ...
13
votes
1answer
628 views

Macro delimiter

I'd like to have a macro to split up another macro content, with field separator being a space. So: \def\mytext{foo bar} \def\secondof#1 #2{#2} \secondof\mytext What? What do you mean: "runaway ...
13
votes
4answers
530 views

How does one change the math style to one of the “primed” styles?

Background TeX typesets each portion of a mathematical expression in one of 8 styles: display, display', text, text', script, script', scriptscript, or scriptscript'. Knuth calls them, D, D', T, T'...
13
votes
2answers
199 views

Which TeX procedure removes trailing tabs?

From reading the TeX source, it seems that the input_ln procedure is responsible for removing trailing spaces from lines upon input (before category codes are considered). A very short excerpt from ...
13
votes
1answer
173 views

Does tex know its own command line arguments?

Is it possible to test within the document what commandline arguments were passed to tex? The particular case that prompts this is the question Tabs in output file written by xelatex and pdflatex are ...
13
votes
1answer
169 views

Inserting tokens at end of math mode

One can use \everymath and \everydisplay to insert tokens at the beginning of math mode, but what about inserting tokens at end of math mode? Lets say I want to enclose the math mode material in a ...
13
votes
1answer
153 views

What is considered a token for non-standard input encodings?

When I use an input encoding to (La)TeX that allows me to directly input characters such as é and ä (such as by declaring \usepackage[utf8]{inputenc}), how is a token defined? Specifically, is it ...
13
votes
1answer
1k views

uppercase and \spacefactor

Apparently, \uppercase forgets about the \spacefactor at the end. For example, {What is the spacefactor?} \the\spacefactor. returns What is the spacefactor? 3000. while \uppercase{What is ...
13
votes
1answer
239 views

How to find out if a math list consists of a single character?

When accents are placed, the TeX engine gives single characters a special treatment; see the TeXbook, Rule 12 on page 443. See also this question and its accepted answer for details. Thus, ...
13
votes
0answers
156 views

What type of Chomsky hierarchy is TeX? [duplicate]

There are four types of chomsky hierarchy (specified for formal languages): Type-0 Recursively enumerable Type-1 Context-sensitive Type-2 Context-free Type-3 Regular I consider that, it should ...
12
votes
2answers
581 views

() or {} after a command

I was wondering why for some commands it is "(...)" that follows, while for other commands it is "{...}". For example, "\exp(x)" and "\bar{x}". Are both () and {} for specifying the arguments for the ...
12
votes
3answers
441 views

TeX command with argument BEFORE the command

Is it possible to do some TeX magic to get a command \mycmd which takes one argument before the command and one afterwards. So something like <arg1>\mycmd<arg2>. I tried \documentclass{...
12
votes
4answers
453 views

Ratio arithmetic in plain TeX

I would like to calculate the ratio between two dimensions and produce a dimensionless quantity for use in further calculation in the process. I seem to be unable to do so. Specifically, I run into ...
12
votes
3answers
721 views

Understanding etoolbox \ifdefempty and \ifdefvoid

I am trying to understand the etoolbox \ifdefempty and \ifdefvoid macros. The documentation says that \ifdefempty Expands to true if the control sequence is defined and is a parameterless macro ...
12
votes
2answers
809 views

How is \unexpanded defined?

I was wondering how \etoolbox's \expandonce does what it does. So I looked up how it was defined and found \unexpanded\expandafter{#1} But no matter where I look, I cannot find a definition for \...
12
votes
2answers
218 views

What would be a suitable replacement for ifcsname in a non-etex situation?

From the pgfkeys.code.tex file: % This is useful: \def\pgfkeys@ifcsname#1\endcsname#2\else#3\fi{\expandafter\ifx\csname#1\endcsnam e\relax#3\else#2\fi}% \ifx\eTeXrevision\undefined% \else% \...
12
votes
4answers
292 views

Useful applications of \edef with macro arguments

Well, it's been in my head for some time, but I haven't got anything out of it, so I ask here. At what places could be useful to have \edef\foo#1{..}? What applications could it have? Is it useful at ...
12
votes
1answer
2k views

Why does \@gobble take one argument

I understand what \@gobble, \@gobbletwo etc. do, but I don't understand why \@gobble allows for an argument. I believe that the definition of the macro is \long\def\@gobble#1{}. Why is this argument ...
12
votes
3answers
2k views

How do I get the width of \hfill?

In my LaTeX document, I have a first line with a given spacing obtained using \hfill, then a paragraph, and then a third line in which I would like to use the same spacing as in the first line. The ...
12
votes
1answer
1k views

Where do arguments of \kern, \hskip etc. end?

In TeX, code like I\kern37ptlike\hskip100ptcake works perfectly well. That makes me wonder how exactly the syntax of primitive commands like \kern, \hskip etc. work? How does TeX determine where their ...
12
votes
2answers
162 views

Document equivalence

What is the best way to determine, for two arbitrary input files, if they will result in the same compiled document (disregarding timestamp information and external files)? Context I'm attempting to ...
12
votes
1answer
913 views

Consume/absorb a token

How does consume/absorb/remove a token from then token stream in TeX? I'm using @ifnextchar and would like to remove the character it matches.