谱文混排之lilypond-book

Lilypond有自带的谱文混排的工具lilypond-book,但是作为外行,一直很难搞清楚这个操作是怎样做的。很久之前请教过别人,但介于我的个人能力,只有粗浅理解,操作不得要领。在许多信息的拼凑之后,终于掌握了lilypond-book的基本使用方法。虽然这个方法极度不方便,但也算对lilypond的了解多了一分,所以还是做了记录

 

-----------------------------------------------

 

lilypond-book的说明文档可以见

LilyPond Application Usage: 3. Running lilypond-book

里面全是英文,看着也晕了好久。工作原理大概是建立 lytex 文件-----> (经过lilypond-book的运行)建立 tex 文件-----> 由tex里的pdflatex指令编译成pdf文件

这个流程真的太劝退了……先不管这个,以下几个部件是必备的:

1 必备部件

1. lilypond本体,来自 LilyPond – 人人的乐谱软件: 下载

2. lilypond-book是python文件,所以最好装一个python;

3. tex的运行组件,我个人下载的是texlive,来自 Index of /CTAN/systems/texlive/Images/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

 

有了这三项之后,开始部署:

2 部署

2.1 编辑系统环境变量

因为lilypond-book要在命令行模式下执行,而命令行模式默认的指令是不包括它的,所以需要先把lilypond-book设置到环境变量里

我知道对于没用过命令行的人来说这个表述看着就想死……直接讲设置方法吧。在开始菜单的空白处输入“编辑系统环境变量”

 

 

 

进入之后,按下图的顺序,跟着红色箭头走:

1. 进入“环境变量”

2. 点击Path,选择“编辑”

3. 编辑页面里选择“新建”

 

 

 

 

 

 

 

 

这时候就是要把lilypond的执行文件的所在文件夹的地址输进去。在lilypond的快捷方式那里点鼠标右键,选择“属性”,按红色箭头点开,这就是文件所在的文件夹。

注意:打开的文件夹先别关掉,一会儿要用

点击红色箭头所在位置,就得到文件夹的地址

 

 

 

 

 

 

 

把它复制到之前的“编辑环境变量”里,点“确定”就可以了

 

 

 

 2.2 修改lilypond-book文件名

是的,lilypond-book 需要修改文件名……回到刚才的文件夹,右键 lilypond-book 这个文件,重命名为 lilypond-book.py

 

 

 

 接下来就是输入与编译

3 输入与编译

3.1 创建 lytex 文件

首先打开编辑器,这个就不用介绍了。输入lilypond官方提供的示例文件,来自 LilyPond Application Usage: 3.6 lilypond-book templates

下面是代码

\documentclass[]{article}

\begin{document}

Normal LaTeX text.

\begin{lilypond}
  \relative {
    a'4 b c d
  }
\end{lilypond}

More LaTeX text, and options in square brackets.

\begin{lilypond}[fragment,relative=2,quote,staffsize=26,verbatim]
d4 c b a
\end{lilypond}
\end{document}

然后保存为 lilypond-book.lytex,保存地址最好要是英文地址,记得打开所在文件夹!

 

3.2 启动 lilypond-book 编译

不要退出这个文件夹,在空白处按住shift键,点右键会看到“在此处打开Powershell窗口”的字样,点开它就到了对应目录下的命令行窗口

 

 

 

 

 

接下来的操作就和lilypond官方教程里的一致了,参考下面地址的Processing一节

LilyPond Application Usage: 3.1 An example of a musicological document

进入文抄公时间:

3.2.1 编译tex文件

lilypond-book --output=out --pdf lilybook.lytex

然后就会弹出一坨执行的文字……执行后就发现原来的文件夹里多了一个叫out的文件夹,这是因为刚才输入的指令里,已经把输出的文件夹设置在了out这个文件夹里。

 

 

点开out这个文件夹,就能看到lilybook.tex已经生成完毕。这样就完成了从 lytex 到 tex 的转换。

 

 

 3.2.2 编译pdf文件

现在进入out文件夹,在空白处再次施展shift+右键,启动这个文件夹下的Powershell窗口,输入

pdflatex lilybook

又是一坨文字之后,就可以看到文件夹里多了一堆文字,其中就包括了期待已久的lilybook.pdf!

 

点开之后就可以看到编译的结果

 

谱文混排的工序到此告一段落。

 

4 总结

1. 整个lilypond-book的配置中有若干对新手极不友好的操作,例如设置环境变量、在窗口下开启Powershell,还有命令行的输入。

除了设置环境变量外,每次生成一个lytex都要把步骤3成套重新操作一次,也是醉了,不知道有没有什么办法把这个操作集成起来。

2. 在3.2.2 中,编译pdf文件的代码时pdflatex,这就说明lytex依赖pdflatex这个编码器。而latex的编码器那么多,其他编码器是不是够用就不清楚了,还有待测试

3. 目前知道Latex里面也有集成lilypond代码一起编译pdf文件的宏包,叫 lyluatex,详见 CTAN: Package lyluatex 。但lyluatex的编译到现在我都还没实现……还是希望能直接在latex内部完成编译更好一点

4. 此路目前死路一条,谱文混排摸索未完待续……

 

posted on 2021-11-24 15:02  lilypond手残粉  阅读(309)  评论(0编辑  收藏  举报