不幸的是,我从未使用过纯 TeX,所以我不知道如何使用该格式的语言支持。如何将 babel 连接到纯 Xe/luaTeX(而不是 Xe/LuaLaTeX)?更具体地说,我对纯 TeX(带有前缀 Xe/lua)对基于西里尔语的语言(乌克兰语、俄语)的支持感兴趣。
% !TeX program = luatex
\input luaotfload.sty
\font\tenrm="Times New Roman"
\tenrm
\TeX --- мова розмітки даних спеціального призначення,
яка є основним ядром системи набору публікацій (комп'ютерної
верстки); зокрема для набору математичних та інших технічних
текстів.
З самого початку \TeX став популярним серед математиків, фізиків, астрофізиків, астрономів, різних вчених-дослідників, яким бракувало необхідних символів на друкарських машинках, а якість документів, створених в інших системах, була незадовільною.
Ядро \TeX --- це інтерпретатор. Базові команди мови дуже низького рівня, але на їх основі можна створювати макрокоманди вищого рівня.
\bye
答案1
您已经知道如何加载字体:输入luaotfload.sty
,然后使用\font
带有要加载的字体名称的命令。西里尔文有几个字符根据语言的不同而有不同的外观,因此建议明确设置使用的语言(尽管乌克兰语/俄语变体几乎总是默认的)。您还应该设置tlig
,否则---
和``''
将显示为文字---
和,``''
而不是预期的—
和“”
。
设置连字模式相对简单:只需\uselanguage{ukrainian}
。这在texdoc etex_src
(你会绝不除非您知道要专门寻找,否则找不到。
但我认为这就是正确的乌克兰语排版所需的全部内容,除非我遗漏了其他一些要求。(我不会说任何西里尔语。)
%% Load the font
\input luaotfload.sty % Lets us use otf/ttf fonts
% "language=ukr;+locl;" to make sure that we use the Ukranian glyph variants (which are almost always the default anyways)
% "tlig" makes "---" and "``quotes''" work as expected
\font\tenrm="CMU Serif Roman:language=ukr;+locl;+tlig" at 10pt
\tenrm % Set the font
%% Set the hyphenation patterns
\uselanguage{ukrainian}
%% Set the page size (just for the demo, ignore)
\hsize=0pt
\overfullrule=0pt
\hoffset=-0.75in
\pagewidth=1.5in
\voffset=-0.75in
\vsize=6.5in
\pageheight=7in
\nopagenumbers
%% Demo text given in the question
\TeX --- мова розмітки даних спеціального призначення, яка є основним
ядром системи набору публікацій (комп'ютерної верстки); зокрема для
набору математичних та інших технічних текстів.
З самого початку \TeX став популярним серед математиків, фізиків,
астрофізиків, астрономів, різних вчених-дослідників, яким бракувало
необхідних символів на друкарських машинках, а якість документів,
створених в інших системах, була незадовільною.
Ядро \TeX --- це інтерпретатор. Базові команди мови дуже низького рівня,
але на їх основі можна створювати макрокоманди вищого рівня.
%% End
\bye
答案2
澄清已经发生了一些变化,因此这里有一个使用 pdflatex 的示例:
\documentclass[10pt,a4paper]{article}
\usepackage[T2A]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[ukrainian,english]{babel}
\begin{document}
\TeX --- мова розмітки даних
спеціального призначення,
яка є основним ядром системи
набору публікацій (комп'ютерної
верстки); зокрема для набору
математичних та інших технічних
текстів.
\bigskip
\TeX~ is a special-purpose data markup language that is the main
core of a publication typesetting system (computer layout); in
particular, for the typesetting of mathematical and other
technical texts.
\end{document}
尽管我不清楚您的情况,即我不明白您从哪里开始,沿着哪条路线前往哪里,但我想向您指出一个有时似乎有用的网站。
https://www.phind.com与 ChatGPT 类似,但专为编程目的而设计。因此,这是一个链接到我的缓存按照这个顺序prompts
查询序列;至少它可以作为一种不同类型的搜索引擎使用,它巧妙地提到了它的来源。旨在您自己的(改进的)一系列提示的起点。
- 如何在 tex 而不是 latex 中获得乌克兰语和英语的语言支持?给出代码示例
- 如何在 tex 而不是 latex 中获得乌克兰语和英语的语言支持?给出代码示例。避免使用 \documentclass、\usepackage 和类似命令。
- 如何用纯 TeX 创建自己的语言定义文件?
首先产生了不需要的 Latex 代码,如下所示(无需尝试编译它:我们仍然必须意识到人工智能的幻觉效应,即看上去不错,但实际上是错误的)
\documentclass{article}
\usepackage[ukrainian,english]{babel}
\begin{document}
This is English text. \foreignlanguage{ukrainian}{Це український текст.} This is again English text.
\end{document}
第二更有趣,给出了一些(通用?)示例和对具有多语言功能的 Xetex 或 LiaTex 的提示;不知道这是否真的有效:
% Define a new command to switch to Ukrainian
\def\switchtolatin{\language=0 }
\def\switchtoukrainian{\language=1 }
% Define the language number for English and Ukrainian
\language=0
% Start the document
\switchtolatin
This is English text.
\switchtoukrainian
Це український текст.
\switchtolatin
This is English text again.
% End the document
\bye
第三第一个是 phind 提出的后续提案,它讨论了.ldf
一些文件,省略了一些有用的文本,
% Define the character encoding for Ukrainian
\catcode`й=1
\catcode`ї=1
...
% Define hyphenation patterns for Ukrainian
\patterns{ukrainian}
\hyphenation{
при-в-и-ту-м % Example hyphenation pattern
...
}
% Define language-specific settings
% For example, you might define the opening and closing quotation marks
\def\"{\cyrdq}
\def\`{\cyra}
...
% Save this in a file named ukrainian.tex
及其用途:
% To use this language definition in your TeX document, you would include it using the \input command:
\input{ukrainian.tex}
% Now you can use Ukrainian characters and hyphenation
Привіт! Це простий текст на українській мові.
下一个提示可能会研究例如概括,因为您可能需要连字符规则而不是列出字典中的所有单词。
希望这能让您充分利用 phind、这个地方、google 以及您拥有的一切,并取得丰硕成果。
例如,打开一个新的 phind 窗口并提示“向我解释一下在纯 tex 中使用的 .ldf 文件”,这至少可以指导你安装 .LDF 语言文件。好的,你已经明白这个概念了。