《Lua-in-ConTeXt》01:Hello world!

ConTeXt,我不厌其烦地打出它的大小写字母,它的意思既非「上下文」,亦非「语境」或「环境」,而是 Text with TeX 的意思。这是荷兰人 Hans Hagen 为自己创造的一个 TeX 宏包而取的一个失败的英文名字。

Lua 是葡萄牙语里的单词,月亮的意思……是巴西人 Roberto Lerusalimschy 为自己和同事们发明的编程语言而取的名字。

安装最新的 ConTeXt

以前写过几次 ConTeXt 的安装指南。现在,它们有些失效了,还有一些过时了。现在,我决定直接给出 ConTeXt 官方的安装指南:

https://wiki.contextgarden.ne...

无论计算机操作系统是 Windows、Mac OS、Linux 还是 FreeBSD,都有办法安装最新版本的 ConTeXt。在我写这份文档的时候,ConTeXt 的最新版本是 ConTeXt LMTX。

Hello world!

从现在开始,我只能假设你已经安装了 ConTeXt。此外,我还要假设你知道什么叫终端(Terminal)或命令行(Command Line)或控制台(Console),而且熟悉它的基本用法——用不了 20 分钟便能达到这一要求。

有了这些假设,我就轻松多了……现在还需要假设你知道什么是纯文本文件。用你觉得最好用的文本编辑器创建一份名曰 hello.tex 的纯文本文件,令其内容如下:

\starttext
Hello world!
\stoptext

然后在终端执行以下命令:

$ context hello.tex

其中 $ 是命令提示符,不需要输入,它的作用就是告诉你,它的后面是需要手工输入的命令。在上面的例子里,输入的命令是 context hello.tex,该命令可在 hello.tex 所在的目录里生成一份 PDF 文件 hello.pdf。

结语

ConTeXt 的 context 命令可将 hello.tex 文件编译成 hello.pdf。

下一篇:ConTeXt 计算机

这里可能不会再更新了。

5.9k 声望
1.9k 粉丝
0 条评论
推荐阅读
ConTeXt 蹊径
大概是 2009 年,初学 ConTeXt 时,曾经写了一份笔记,内容颇为粗陋,当时 CTeX 论坛的朋友协助打包上传到了 CTAN。2011 年我对该笔记作了一些修改,并在文中许诺在当年年底作一番大修,然而我食言了。很多年后,...

garfileo阅读 609评论 3

Redis分布式锁的实现
很多新手将 分布式锁 和 分布式事务 混淆,个人理解:锁 是用于解决多程序并发争夺某一共享资源;事务 是用于保障一系列操作执行的一致性。我前面有几篇文章讲解了分布式事务,关于2PC、TCC和异步确保方案的实现...

KerryWu4阅读 7.1k评论 2

《Lua-in-ConTeXt》10:缓冲区魔法
基于 ConTeXt 的缓冲区(Buffe)及其对 Lua 语言的支持,可以实现大段排版内容的预处理。所谓预处理,是指在 TeX 编译器对排版内容进行断行分页之前的处理,通常由排版者负责。

garfileo阅读 783

ConTeXt 蹊径
大概是 2009 年,初学 ConTeXt 时,曾经写了一份笔记,内容颇为粗陋,当时 CTeX 论坛的朋友协助打包上传到了 CTAN。2011 年我对该笔记作了一些修改,并在文中许诺在当年年底作一番大修,然而我食言了。很多年后,...

garfileo阅读 609评论 3

《Lua-in-ConTeXt》12:zhfonts 备忘录
zhfonts 模块实现了 ConTeXt (>= MkIV) 对汉字字体的加载、简体汉字标点符号(全角)间距的压缩以及边界对齐。该模块成型于 2011 年,2023 年初对代码进行了一番梳理,希望它能工作到 2033 年……安装和使用方法...

garfileo阅读 574

《Lua-in-ConTeXt》11:源码凸显
这段 C 程序源码在我的 Emacs 编辑器里,变量类型、宏、关键字、函数名等元素,颜色不一,可读性显然优于 ConTeXt 默认的排版结果,证据是,反对者的家里早已没有黑白电视了。

garfileo阅读 535

一文讲透 Redis 事务 (事务模式 VS Lua 脚本)
准确的讲,Redis 事务包含两种模式 : 事务模式 和 Lua 脚本。先说结论:Redis 的事务模式具备如下特点:保证隔离性;无法保证持久性;具备了一定的原子性,但不支持回滚;一致性的概念有分歧,假设在一致性的核心...

勇哥java实战分享阅读 506

封面图

这里可能不会再更新了。

5.9k 声望
1.9k 粉丝
宣传栏