手残非要用lilypond打谱真是……

可是lilypond又能满足各种细节标记和谱文混排,这是musescore达不到的

所以还是开这个坑,希望能逐渐自己有能力编写自己的音乐教材

个人用Frescobaldi作为lilypond的编辑器,本来想在VS code上直接编辑的,但是前后设置下来还是有好多小毛病没弄好,只好继续用这个了

这个blog并不是lilypond教程的翻译,而是从我个人的使用出发,记录一些心得或者是一些模板。

因为实在手残,十分希望大佬指点。望不吝赐教

这是最简单的一个模板,包括了文章和乐谱的混排,还有单行乐谱与钢琴谱的例子,段落和字体设置都是默认。

效果如图,用的是a6的大小,因为这样手机上看会更方便些,打印出来也更方便教学……

代码和说明如下:

\version "2.18.2"
\paper {
#(set-paper-size "a6") %设置纸张大小,这里为a6
}
%这里是设置标题等信息
\header {
title = "我是标题" %标题
composer = "我是作者" %作者
tagline = ##f %去掉默认的页脚
} \markup {
我是文字 %段落
} \markuplist {
\wordwrap-lines{
我是长文字,我是长文字,我是长文字, 我是长文字,我是长文字,我是长文字,我是长文字,我是长文字,
} %汉字似乎无法分段
\wordwrap-lines{
The art of music typography is called \italic {(plate) engraving.}The term derives from the traditional process of music printing.
Just a few decades ago,
} %英语分段没问题
} %下面是乐谱写作
%单行乐谱
\score {
\relative c'{ %设定参考音高为小字一组c
\clef "treble" %谱号为高音谱号
\time 2/4 %拍号
\key c \major %调号
c4 c|
g' g |
a a |g2 |
\bar "|." %结束
}
\layout {
indent = 0 %取消首行缩进
}
}
%没有小节线、没有拍号、带音名的乐谱
\score {
<<
\new Staff {
\relative c'{
c1 d e f g a b c
}
}
\new Lyrics {
\lyricmode {
C D E F G A B C
}
}
>>
\layout {
indent = 0cm
\context {
\Staff
\remove "Time_signature_engraver"%取消拍号
\remove "Bar_engraver" %取消小节线
}
}
}
\markup {下面是钢琴谱}
%钢琴谱
%右手分谱
pianoRH = \relative c'{
\clef "treble"
\time 2/4
\key c \major
c4 c |
g' g |
\break %换行
a a |
g2 |
\bar "|."
} %左手分谱
pianoLH = \relative c { %设定参考音高为小字组c
\clef "bass" %谱号为低音谱号
\time 2/4
\key c \major
c4 c |
g' g |
a a |
g2 |
\bar "|."
} %完成左手分谱 %组装成钢琴谱
\score {
\new PianoStaff <<
\new Staff {
\pianoRH %右手分谱
}
\new Staff {
\pianoLH %左手分谱
}
>>
\layout{
indent=0cm
}
}

现在有几个问题:

1. 汉字无法自动换行,试了包括wordwrap、justified-lines、line等等命令都没有办法,不知道如何操作;

2. 文字排版无力,行距、页边距调整无力

只能是最初步的使用,做一做基础的谱例和说明还可以,还要进一步学习

个人使用的lilypond第一个模板的更多相关文章

  1. django之创建第3个项目:编写第一个模板文件

    1.django结构 2.在站点blog下创建templates文件夹,专门用于存放模板文件 3.在templates文件夹下创建index.html文件 #index.html <!DOCTY ...

  2. djando模板----第一django模板应用

    Django模板 我们已经知道,模板函数的函数的返回值就是返回给客户端的数据,但如果返回数据很复杂,如果一个非常大的html页面,直接将页面代码固化在python脚本文件中是不合适的,当然 也可以将h ...

  3. Django 1.10中文文档-第一个应用Part3-视图和模板

    本教程上接Django 1.10中文文档-第一个应用Part2-模型和管理站点.我们将继续开发网页投票这个应用,主要讲如何创建一个对用户开放的界面. 概览 视图是Django应用中的一“类”网页,它通 ...

  4. Javascript最简单的模板引擎

    非常简单,性能估计一般,方法最原始. //第一代模板引擎 //只支持{{key}}的替换,不支持语句 //支持Object和Array对象 function template_setdata(temp ...

  5. wpf 获取datagrid中模板中控件

    //获取name为datagrid中第三列第一行模板的控件 FrameworkElement item = dataGrid.Columns[].GetCellContent(dataGrid.Ite ...

  6. C++模板元编程(C++ template metaprogramming)

    实验平台:Win7,VS2013 Community,GCC 4.8.3(在线版) 所谓元编程就是编写直接生成或操纵程序的程序,C++ 模板给 C++ 语言提供了元编程的能力,模板使 C++ 编程变得 ...

  7. 模板(Template)

    最近阅读google chromium base container stack_container代码,深刻感觉到基础知识不扎实. // Casts the buffer in its right ...

  8. C++ 模板与泛型编程

    <C++ Primer 4th>读书笔记 所谓泛型编程就是以独立于任何特定类型的方式编写代码.泛型编程与面向对象编程一样,都依赖于某种形式的多态性. 面向对象编程中的多态性在运行时应用于存 ...

  9. python django 模板

    1 用两个大括号括起来的文字{{person_name}} 称为变量 2 被 大括号和面分号包围的文件({% if ordered_warranty %})是模板标签 3 过滤器是用管道符(|) 和U ...

随机推荐

  1. 详解Linux运维工程师必备技能

    张戈大神是腾讯的一名运维,张戈博客也是我接触到第一个 Linux 运维师的博客,最近也在接触 Linux,说到工具,在行外可以说是技能,在行内一般称为工具,就是运维必须要掌握的工具. 我就大概列出这几 ...

  2. JAVA String类型的一些小操作

    String类型是否包含某个String类型的函数:源字符串.contains(包含字符串)  返回值为:boolean类型(true或false) String类型把某个字符替换成另一个字符:源字符 ...

  3. 004-python-列表、元组、字典

    1. 什么是列表 列表是一个可变的数据类型 列表由[]来表示, 每一项元素使用逗号隔开. 列表什么都能装. 能装对象的对象. 列表可以装大量的数据 2. 列表的索引和切片 列表和字符串一样. 也有索引 ...

  4. c++指针经典题目分析

    首先看一下题目,下列程序会在那一行崩溃,程序如下: #include<iostream> using namespace std; struct S{ int i; int *p; }; ...

  5. kuangbin专题 专题一 简单搜索 非常可乐 HDU - 1495

    题目链接:https://vjudge.net/problem/HDU-1495 题意:有两个空杯(分别是N升和M升)和一罐满的可乐S升,S = N + M,三个容器可以互相倾倒,如果A倒入B,只有两 ...

  6. Flask-登录练习

    基于蓝图CBV模式的登录 使用蓝图并用cbv模式完成登录功能 登录成功后跳转到首页 将session保存在liunx上的redis数据库 使用before_request验证是否是登陆用户 蓝图 fr ...

  7. 宏旺半导体浅谈存储芯片LPDDR4X与UFS2.1的差别

    现在市面上手机参数动不动就是8GB+128GB,手机的这些参数是越大越好吗?这些数字代表什么?宏旺半导体ICMAX给大家科普下. 手机的运行内存RAM——LPDDR4X LPDDR4X为RAM(运存) ...

  8. 微服务SpringCloud之熔断监控Hystrix Dashboard和Turbine

    Hystrix-dashboard是一款针对Hystrix进行实时监控的工具,通过Hystrix Dashboard我们可以在直观地看到各Hystrix Command的请求响应时间, 请求成功率等数 ...

  9. 个人永久性免费-Excel催化剂功能第22波-Excel文件类型、密码批量修改,补齐PowerQuery短板

    Excel的多工作薄.多工作表批量合并功能,Excel用户很多这方面的使用场景,也促使了各大Excel各大插件们都在此功能上有所开发,体验程度不一,但总体能够满足大多数的应用场景,本人之前也开发个单独 ...

  10. c语言进阶6-指针

    指针是c语言的一个重要组成部分 是c语言的核心.精髓所在,用好指针可以在c语言编程中起到事半功倍的效果.一方面,可以提高程序的编译效率和执行速度以及实现动态的存储分配:另一方面,使用指针可使程序更灵活 ...