MusiXTeX和GNU LilyPond两者似乎都基于其语法。有什么区别吗?为什么其中一个比另一个更好?
答案1
MusiXTeX 是基于 TeX。其最新版本还使用辅助程序musixflx
重新格式化了使用 MusiXTeX 进行的首次尝试,以便调整音符或小节(组)之间的间距,从而完全填充线条。
这是一个非常了不起的软件,除了外部干预外,其余全部基于 TeX。音符用字符制作,可以制作非常复杂的乐谱。你可以在沃纳·艾金音乐档案现已与国际乐谱图书馆项目。
荷花池另一方面,它的语法很大程度上受到 TeX 的启发,但这也是唯一的相似之处。它是一个完全不同的系统,使用自己的引擎和字体来排版音乐。根据维基百科文章,LilyPond 起源于 MusiXTeX,这解释了语法上的相似性,但很快就与其前身分道扬镳。
它正在积极开发并能够产生非常高水平的结果,甚至比昂贵的专有软件更好(据我的一位音乐家朋友说)。
个人说明:我写过用于将 LaTeX 音乐排版与不同的系统 (ABC) 集成的软件包; 我尝试将其适配到 LilyPond,但语法相似是一个障碍。不过,反过来也可以使用诸如 之类的脚本进行集成lilypond-book
。
答案2
我想对你从 egreg 那里得到的精彩回答做一点补充,尽管这可能会被这里的许多专业音乐家纠正,他们都是比我更资深的 TeX 专家。
如果您仔细观察印刷精美的书籍,您会发现某些字母组合被视为一个单位。例如 fi。在排版中,这种单位被称为连字。连字发生在两个或多个字素连接成单个字形的地方。连字通常替换具有共同组成部分的连续字符,并且是更通用的字形类别的一部分,称为“上下文形式”。与书面文本不同,乐谱以充满连字而闻名。只需考虑全音符与三连音。不幸的是,当您深入了解乐谱的排版时,您会发现音乐连字之间的对称间距通常意味着排版质量差。与更喜欢对称间距的 TeX(这是过于简单化,但请检查 TeX 中的粘合)不同,Lilypond 从头开始设计用于处理音乐连字的非对称间距。虽然可以用 TeX(MusicTeX 和 MusiXTeX)输入音乐,但 LilyPond 更漂亮。开发 LilyPond 的人曾经是 MusicTeX 的开发人员。我甚至会进一步说,输入音乐是那些不应该使用 TeX 的少数场合之一。
免责声明:我几乎在整个成年和职业数学生涯中(大约 1991 年)都在使用 TeX,五年前,当我想为我的小女儿排版几首歌曲时,我偶然发现了 Lilypond。我绝不是 LilyPond 的专家。从我的想法来看,我认为 Lilypond 能够通过 midi 接口将键盘上的音乐转换为乐谱。但说到音乐,它完全是另一回事。
答案3
两个非常好的答案。我想补充一下(这个帖子可能会变得太“随波逐流”):
LilyPond 致力于成为一个独立且投入的音乐引擎。重点是通过宏过程操纵音乐内容。这与盒子外面能够生成独立的 PDF 文件或其他各种各样的用于打印的文件,并且不需要花费太多的学习时间。
但除此之外,LilyPond 还想努力实现 MusiXTeX 所没有的美学优势——以优美和优雅覆盖整个音乐符号范围。这体现在古代乐谱、OTF 字体用于 LilyPond,以及更优越(且不那么令人恼火)的工艺调整 LilyPond 的图形输出以满足用户需求。