tokenization

问题 1
tokenization

问题 1

第 48 页TeXbook,有一个练习 假设纯 TEX 的分类代码有效,但字符^^A、^^B、^^C分别^^M属于类别 0、7、10 和 11。从(相当荒谬的)输入行^^B^^BM^^A^^B^^C^^M^^@\M␣(最后一个字符是空格)产生了什么标记?(请记住,此行后面跟着 ⟨return⟩,即^^M;并回想一下^^@表示 ⟨null⟩ 字符,它在INITEX开始时属于类别 9。) 答案是 两个^^B' 不被识别为连续的上标字符,因为第一个^^B被转换为代码 2,它不等于后面的字符^。因此结果是七个标记:^^B7 ^^B7 M11 |^^B| ...

Admin

语言问题:\x 定义为,为什么使用命令 \x 与使用
tokenization

语言问题:\x 定义为,为什么使用命令 \x 与使用

这更像是一个 LaTeX 语言问题,而不是“我如何完成 XYZ”的问题。 在下面的代码中,使用VerbatimOut是成功的。 将该用法放在\newcommand*定义中,使用 new 命令会失败。 从语言角度来看,为什么它们不等同? 标记化、处理等过程中会发生什么导致它们有不同的行为? \documentclass[11pt]{article} \usepackage{fancyvrb} \newcommand*{\writeToFile}{ \begin{VerbatimOut}{myFileFromCommand.txt} fromCommand \...

Admin

背景
tokenization

背景

背景 每个章节标题都包含多个单词,但只有前两个单词可以在其他地方使用(例如,页眉)。 问题 我正在寻找一种通用的分词解决方案,可以将单词分成标记,然后选择这些标记的连续子集。例如: \define\ChapterQuote{Genius is one percent inspiration and ninety-nine percent perspiration.} \starttext % Output: one percent inspiration \splittext[3,5]{\ChapterQuote} % Output: Gen...

Admin

\verb 如何检测不应该存在的空格
tokenization

\verb 如何检测不应该存在的空格

考虑以下 MWE: \documentclass{article} \usepackage{listings} \lstset{basicstyle=\ttfamily} \begin{document} \lstinline |asdf|asdf asdfasdf \verb |asdf|asdf asdfasdf \end{document} 我对这里期望的内容的理解一直是如下(以下\cmd代表\verb或):\lstinline 当 TeX 第一次对 进行标记时\cmd |,它会吞噬其后面的空间,只留下\cmd其“嘴里”的标记(以及|输...

Admin

如何收集包含逐字文本和带有参数的定义的环境以便稍后进行排版?
tokenization

如何收集包含逐字文本和带有参数的定义的环境以便稍后进行排版?

我一直在尝试收集 tex 标记(去标记化)并在稍后用 输出它们\scantokens。问题是不能删除重复的参数(#)理想情况下,将所有内容作为字符串读取直到某个标记会很棒,但这可能需要逐个读取标记并将其 catcode 更改为字符串并在某些位置添加空格。 例如我想收集thebibliography并输出到文档末尾。当我取消注释时会出现问题\def\path...。它会给出一个错误! Parameters must be numbered consecutively. 例子: \documentclass{article} \usepackage{enviro...

Admin

消除指数宏中的过早标记化
tokenization

消除指数宏中的过早标记化

我在 LaTeX 文档中生成了大量包含格式的索引条目,其中一些条目位于影响参数过早标记的区域(脚注、的可选参数\item等),因此我在文件的同一页面上获得两个看起来相同的条目.idx,一个在格式后有空格(例如\textit␣␣{foo}以及\textit{foo})。 这个问题已经通过关于脚注中的索引条目的问题以及一个回复链接关于命名索引的问题但仅限于多个索引的情况(带有\index命令的可选参数)。 有没有办法针对单个索引解决这个问题?从上面的两页中我看不出如何概括解决方案。 [顺便说一句,我感兴趣的是知道这两个虚假空间实际上来自哪里,以及为什么标记化会插...

Admin