LilyPond-Ruby 0.1.1 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1109) hide show
  1. checksums.yaml +4 -4
  2. data/etc/fonts/conf.d/10-hinting-slight.conf +15 -0
  3. data/etc/fonts/conf.d/10-scale-bitmap-fonts.conf +83 -0
  4. data/etc/fonts/conf.d/11-lcdfilter-default.conf +17 -0
  5. data/etc/fonts/conf.d/20-unhint-small-vera.conf +49 -0
  6. data/etc/fonts/conf.d/30-metric-aliases.conf +637 -0
  7. data/etc/fonts/conf.d/40-nonlatin.conf +332 -0
  8. data/etc/fonts/conf.d/45-generic.conf +136 -0
  9. data/etc/fonts/conf.d/45-latin.conf +301 -0
  10. data/etc/fonts/conf.d/48-spacing.conf +16 -0
  11. data/etc/fonts/conf.d/49-sansserif.conf +22 -0
  12. data/etc/fonts/conf.d/50-user.conf +16 -0
  13. data/etc/fonts/conf.d/51-local.conf +7 -0
  14. data/etc/fonts/conf.d/60-generic.conf +64 -0
  15. data/etc/fonts/conf.d/60-latin.conf +88 -0
  16. data/etc/fonts/conf.d/65-fonts-persian.conf +418 -0
  17. data/etc/fonts/conf.d/65-nonlatin.conf +228 -0
  18. data/etc/fonts/conf.d/69-unifont.conf +28 -0
  19. data/etc/fonts/conf.d/80-delicious.conf +19 -0
  20. data/etc/fonts/conf.d/90-synthetic.conf +64 -0
  21. data/etc/fonts/conf.d/README +23 -0
  22. data/etc/fonts/fonts.conf +101 -0
  23. data/etc/relocate/fontconfig.reloc +2 -0
  24. data/etc/relocate/guile.reloc +2 -0
  25. data/etc/relocate/libexec.reloc +1 -0
  26. data/lib/guile/2.2/ccache/ice-9/and-let-star.go +0 -0
  27. data/lib/guile/2.2/ccache/ice-9/arrays.go +0 -0
  28. data/lib/guile/2.2/ccache/ice-9/atomic.go +0 -0
  29. data/lib/guile/2.2/ccache/ice-9/binary-ports.go +0 -0
  30. data/lib/guile/2.2/ccache/ice-9/boot-9.go +0 -0
  31. data/lib/guile/2.2/ccache/ice-9/buffered-input.go +0 -0
  32. data/lib/guile/2.2/ccache/ice-9/calling.go +0 -0
  33. data/lib/guile/2.2/ccache/ice-9/channel.go +0 -0
  34. data/lib/guile/2.2/ccache/ice-9/command-line.go +0 -0
  35. data/lib/guile/2.2/ccache/ice-9/common-list.go +0 -0
  36. data/lib/guile/2.2/ccache/ice-9/control.go +0 -0
  37. data/lib/guile/2.2/ccache/ice-9/curried-definitions.go +0 -0
  38. data/lib/guile/2.2/ccache/ice-9/debug.go +0 -0
  39. data/lib/guile/2.2/ccache/ice-9/deprecated.go +0 -0
  40. data/lib/guile/2.2/ccache/ice-9/documentation.go +0 -0
  41. data/lib/guile/2.2/ccache/ice-9/eval-string.go +0 -0
  42. data/lib/guile/2.2/ccache/ice-9/eval.go +0 -0
  43. data/lib/guile/2.2/ccache/ice-9/expect.go +0 -0
  44. data/lib/guile/2.2/ccache/ice-9/fdes-finalizers.go +0 -0
  45. data/lib/guile/2.2/ccache/ice-9/format.go +0 -0
  46. data/lib/guile/2.2/ccache/ice-9/ftw.go +0 -0
  47. data/lib/guile/2.2/ccache/ice-9/futures.go +0 -0
  48. data/lib/guile/2.2/ccache/ice-9/gap-buffer.go +0 -0
  49. data/lib/guile/2.2/ccache/ice-9/getopt-long.go +0 -0
  50. data/lib/guile/2.2/ccache/ice-9/hash-table.go +0 -0
  51. data/lib/guile/2.2/ccache/ice-9/hcons.go +0 -0
  52. data/lib/guile/2.2/ccache/ice-9/history.go +0 -0
  53. data/lib/guile/2.2/ccache/ice-9/i18n.go +0 -0
  54. data/lib/guile/2.2/ccache/ice-9/iconv.go +0 -0
  55. data/lib/guile/2.2/ccache/ice-9/lineio.go +0 -0
  56. data/lib/guile/2.2/ccache/ice-9/list.go +0 -0
  57. data/lib/guile/2.2/ccache/ice-9/local-eval.go +0 -0
  58. data/lib/guile/2.2/ccache/ice-9/ls.go +0 -0
  59. data/lib/guile/2.2/ccache/ice-9/mapping.go +0 -0
  60. data/lib/guile/2.2/ccache/ice-9/match.go +0 -0
  61. data/lib/guile/2.2/ccache/ice-9/networking.go +0 -0
  62. data/lib/guile/2.2/ccache/ice-9/null.go +0 -0
  63. data/lib/guile/2.2/ccache/ice-9/occam-channel.go +0 -0
  64. data/lib/guile/2.2/ccache/ice-9/optargs.go +0 -0
  65. data/lib/guile/2.2/ccache/ice-9/peg/cache.go +0 -0
  66. data/lib/guile/2.2/ccache/ice-9/peg/codegen.go +0 -0
  67. data/lib/guile/2.2/ccache/ice-9/peg/simplify-tree.go +0 -0
  68. data/lib/guile/2.2/ccache/ice-9/peg/string-peg.go +0 -0
  69. data/lib/guile/2.2/ccache/ice-9/peg/using-parsers.go +0 -0
  70. data/lib/guile/2.2/ccache/ice-9/peg.go +0 -0
  71. data/lib/guile/2.2/ccache/ice-9/poe.go +0 -0
  72. data/lib/guile/2.2/ccache/ice-9/poll.go +0 -0
  73. data/lib/guile/2.2/ccache/ice-9/popen.go +0 -0
  74. data/lib/guile/2.2/ccache/ice-9/ports.go +0 -0
  75. data/lib/guile/2.2/ccache/ice-9/posix.go +0 -0
  76. data/lib/guile/2.2/ccache/ice-9/pretty-print.go +0 -0
  77. data/lib/guile/2.2/ccache/ice-9/psyntax-pp.go +0 -0
  78. data/lib/guile/2.2/ccache/ice-9/q.go +0 -0
  79. data/lib/guile/2.2/ccache/ice-9/r5rs.go +0 -0
  80. data/lib/guile/2.2/ccache/ice-9/rdelim.go +0 -0
  81. data/lib/guile/2.2/ccache/ice-9/receive.go +0 -0
  82. data/lib/guile/2.2/ccache/ice-9/regex.go +0 -0
  83. data/lib/guile/2.2/ccache/ice-9/runq.go +0 -0
  84. data/lib/guile/2.2/ccache/ice-9/rw.go +0 -0
  85. data/lib/guile/2.2/ccache/ice-9/safe-r5rs.go +0 -0
  86. data/lib/guile/2.2/ccache/ice-9/safe.go +0 -0
  87. data/lib/guile/2.2/ccache/ice-9/sandbox.go +0 -0
  88. data/lib/guile/2.2/ccache/ice-9/save-stack.go +0 -0
  89. data/lib/guile/2.2/ccache/ice-9/scm-style-repl.go +0 -0
  90. data/lib/guile/2.2/ccache/ice-9/serialize.go +0 -0
  91. data/lib/guile/2.2/ccache/ice-9/session.go +0 -0
  92. data/lib/guile/2.2/ccache/ice-9/slib.go +0 -0
  93. data/lib/guile/2.2/ccache/ice-9/stack-catch.go +0 -0
  94. data/lib/guile/2.2/ccache/ice-9/streams.go +0 -0
  95. data/lib/guile/2.2/ccache/ice-9/string-fun.go +0 -0
  96. data/lib/guile/2.2/ccache/ice-9/suspendable-ports.go +0 -0
  97. data/lib/guile/2.2/ccache/ice-9/syncase.go +0 -0
  98. data/lib/guile/2.2/ccache/ice-9/textual-ports.go +0 -0
  99. data/lib/guile/2.2/ccache/ice-9/threads.go +0 -0
  100. data/lib/guile/2.2/ccache/ice-9/time.go +0 -0
  101. data/lib/guile/2.2/ccache/ice-9/top-repl.go +0 -0
  102. data/lib/guile/2.2/ccache/ice-9/unicode.go +0 -0
  103. data/lib/guile/2.2/ccache/ice-9/vlist.go +0 -0
  104. data/lib/guile/2.2/ccache/ice-9/weak-vector.go +0 -0
  105. data/lib/guile/2.2/ccache/language/brainfuck/compile-scheme.go +0 -0
  106. data/lib/guile/2.2/ccache/language/brainfuck/compile-tree-il.go +0 -0
  107. data/lib/guile/2.2/ccache/language/brainfuck/parse.go +0 -0
  108. data/lib/guile/2.2/ccache/language/brainfuck/spec.go +0 -0
  109. data/lib/guile/2.2/ccache/language/bytecode/spec.go +0 -0
  110. data/lib/guile/2.2/ccache/language/bytecode.go +0 -0
  111. data/lib/guile/2.2/ccache/language/cps/closure-conversion.go +0 -0
  112. data/lib/guile/2.2/ccache/language/cps/compile-bytecode.go +0 -0
  113. data/lib/guile/2.2/ccache/language/cps/constructors.go +0 -0
  114. data/lib/guile/2.2/ccache/language/cps/contification.go +0 -0
  115. data/lib/guile/2.2/ccache/language/cps/cse.go +0 -0
  116. data/lib/guile/2.2/ccache/language/cps/dce.go +0 -0
  117. data/lib/guile/2.2/ccache/language/cps/effects-analysis.go +0 -0
  118. data/lib/guile/2.2/ccache/language/cps/elide-values.go +0 -0
  119. data/lib/guile/2.2/ccache/language/cps/handle-interrupts.go +0 -0
  120. data/lib/guile/2.2/ccache/language/cps/intmap.go +0 -0
  121. data/lib/guile/2.2/ccache/language/cps/intset.go +0 -0
  122. data/lib/guile/2.2/ccache/language/cps/licm.go +0 -0
  123. data/lib/guile/2.2/ccache/language/cps/optimize.go +0 -0
  124. data/lib/guile/2.2/ccache/language/cps/peel-loops.go +0 -0
  125. data/lib/guile/2.2/ccache/language/cps/primitives.go +0 -0
  126. data/lib/guile/2.2/ccache/language/cps/prune-bailouts.go +0 -0
  127. data/lib/guile/2.2/ccache/language/cps/prune-top-level-scopes.go +0 -0
  128. data/lib/guile/2.2/ccache/language/cps/reify-primitives.go +0 -0
  129. data/lib/guile/2.2/ccache/language/cps/renumber.go +0 -0
  130. data/lib/guile/2.2/ccache/language/cps/rotate-loops.go +0 -0
  131. data/lib/guile/2.2/ccache/language/cps/self-references.go +0 -0
  132. data/lib/guile/2.2/ccache/language/cps/simplify.go +0 -0
  133. data/lib/guile/2.2/ccache/language/cps/slot-allocation.go +0 -0
  134. data/lib/guile/2.2/ccache/language/cps/spec.go +0 -0
  135. data/lib/guile/2.2/ccache/language/cps/specialize-numbers.go +0 -0
  136. data/lib/guile/2.2/ccache/language/cps/specialize-primcalls.go +0 -0
  137. data/lib/guile/2.2/ccache/language/cps/split-rec.go +0 -0
  138. data/lib/guile/2.2/ccache/language/cps/type-checks.go +0 -0
  139. data/lib/guile/2.2/ccache/language/cps/type-fold.go +0 -0
  140. data/lib/guile/2.2/ccache/language/cps/types.go +0 -0
  141. data/lib/guile/2.2/ccache/language/cps/utils.go +0 -0
  142. data/lib/guile/2.2/ccache/language/cps/verify.go +0 -0
  143. data/lib/guile/2.2/ccache/language/cps/with-cps.go +0 -0
  144. data/lib/guile/2.2/ccache/language/cps.go +0 -0
  145. data/lib/guile/2.2/ccache/language/ecmascript/array.go +0 -0
  146. data/lib/guile/2.2/ccache/language/ecmascript/base.go +0 -0
  147. data/lib/guile/2.2/ccache/language/ecmascript/compile-tree-il.go +0 -0
  148. data/lib/guile/2.2/ccache/language/ecmascript/function.go +0 -0
  149. data/lib/guile/2.2/ccache/language/ecmascript/impl.go +0 -0
  150. data/lib/guile/2.2/ccache/language/ecmascript/parse.go +0 -0
  151. data/lib/guile/2.2/ccache/language/ecmascript/spec.go +0 -0
  152. data/lib/guile/2.2/ccache/language/ecmascript/tokenize.go +0 -0
  153. data/lib/guile/2.2/ccache/language/elisp/bindings.go +0 -0
  154. data/lib/guile/2.2/ccache/language/elisp/boot.go +0 -0
  155. data/lib/guile/2.2/ccache/language/elisp/compile-tree-il.go +0 -0
  156. data/lib/guile/2.2/ccache/language/elisp/falias.go +0 -0
  157. data/lib/guile/2.2/ccache/language/elisp/lexer.go +0 -0
  158. data/lib/guile/2.2/ccache/language/elisp/parser.go +0 -0
  159. data/lib/guile/2.2/ccache/language/elisp/runtime/function-slot.go +0 -0
  160. data/lib/guile/2.2/ccache/language/elisp/runtime/value-slot.go +0 -0
  161. data/lib/guile/2.2/ccache/language/elisp/runtime.go +0 -0
  162. data/lib/guile/2.2/ccache/language/elisp/spec.go +0 -0
  163. data/lib/guile/2.2/ccache/language/scheme/compile-tree-il.go +0 -0
  164. data/lib/guile/2.2/ccache/language/scheme/decompile-tree-il.go +0 -0
  165. data/lib/guile/2.2/ccache/language/scheme/spec.go +0 -0
  166. data/lib/guile/2.2/ccache/language/tree-il/analyze.go +0 -0
  167. data/lib/guile/2.2/ccache/language/tree-il/canonicalize.go +0 -0
  168. data/lib/guile/2.2/ccache/language/tree-il/compile-cps.go +0 -0
  169. data/lib/guile/2.2/ccache/language/tree-il/debug.go +0 -0
  170. data/lib/guile/2.2/ccache/language/tree-il/effects.go +0 -0
  171. data/lib/guile/2.2/ccache/language/tree-il/fix-letrec.go +0 -0
  172. data/lib/guile/2.2/ccache/language/tree-il/optimize.go +0 -0
  173. data/lib/guile/2.2/ccache/language/tree-il/peval.go +0 -0
  174. data/lib/guile/2.2/ccache/language/tree-il/primitives.go +0 -0
  175. data/lib/guile/2.2/ccache/language/tree-il/spec.go +0 -0
  176. data/lib/guile/2.2/ccache/language/tree-il.go +0 -0
  177. data/lib/guile/2.2/ccache/language/value/spec.go +0 -0
  178. data/lib/guile/2.2/ccache/oop/goops/accessors.go +0 -0
  179. data/lib/guile/2.2/ccache/oop/goops/active-slot.go +0 -0
  180. data/lib/guile/2.2/ccache/oop/goops/composite-slot.go +0 -0
  181. data/lib/guile/2.2/ccache/oop/goops/describe.go +0 -0
  182. data/lib/guile/2.2/ccache/oop/goops/internal.go +0 -0
  183. data/lib/guile/2.2/ccache/oop/goops/save.go +0 -0
  184. data/lib/guile/2.2/ccache/oop/goops/simple.go +0 -0
  185. data/lib/guile/2.2/ccache/oop/goops/stklos.go +0 -0
  186. data/lib/guile/2.2/ccache/oop/goops.go +0 -0
  187. data/lib/guile/2.2/ccache/rnrs/arithmetic/bitwise.go +0 -0
  188. data/lib/guile/2.2/ccache/rnrs/arithmetic/fixnums.go +0 -0
  189. data/lib/guile/2.2/ccache/rnrs/arithmetic/flonums.go +0 -0
  190. data/lib/guile/2.2/ccache/rnrs/base.go +0 -0
  191. data/lib/guile/2.2/ccache/rnrs/bytevectors.go +0 -0
  192. data/lib/guile/2.2/ccache/rnrs/conditions.go +0 -0
  193. data/lib/guile/2.2/ccache/rnrs/control.go +0 -0
  194. data/lib/guile/2.2/ccache/rnrs/enums.go +0 -0
  195. data/lib/guile/2.2/ccache/rnrs/eval.go +0 -0
  196. data/lib/guile/2.2/ccache/rnrs/exceptions.go +0 -0
  197. data/lib/guile/2.2/ccache/rnrs/files.go +0 -0
  198. data/lib/guile/2.2/ccache/rnrs/hashtables.go +0 -0
  199. data/lib/guile/2.2/ccache/rnrs/io/ports.go +0 -0
  200. data/lib/guile/2.2/ccache/rnrs/io/simple.go +0 -0
  201. data/lib/guile/2.2/ccache/rnrs/lists.go +0 -0
  202. data/lib/guile/2.2/ccache/rnrs/mutable-pairs.go +0 -0
  203. data/lib/guile/2.2/ccache/rnrs/mutable-strings.go +0 -0
  204. data/lib/guile/2.2/ccache/rnrs/programs.go +0 -0
  205. data/lib/guile/2.2/ccache/rnrs/r5rs.go +0 -0
  206. data/lib/guile/2.2/ccache/rnrs/records/inspection.go +0 -0
  207. data/lib/guile/2.2/ccache/rnrs/records/procedural.go +0 -0
  208. data/lib/guile/2.2/ccache/rnrs/records/syntactic.go +0 -0
  209. data/lib/guile/2.2/ccache/rnrs/sorting.go +0 -0
  210. data/lib/guile/2.2/ccache/rnrs/syntax-case.go +0 -0
  211. data/lib/guile/2.2/ccache/rnrs/unicode.go +0 -0
  212. data/lib/guile/2.2/ccache/rnrs.go +0 -0
  213. data/lib/guile/2.2/ccache/scripts/api-diff.go +0 -0
  214. data/lib/guile/2.2/ccache/scripts/autofrisk.go +0 -0
  215. data/lib/guile/2.2/ccache/scripts/compile.go +0 -0
  216. data/lib/guile/2.2/ccache/scripts/disassemble.go +0 -0
  217. data/lib/guile/2.2/ccache/scripts/display-commentary.go +0 -0
  218. data/lib/guile/2.2/ccache/scripts/doc-snarf.go +0 -0
  219. data/lib/guile/2.2/ccache/scripts/frisk.go +0 -0
  220. data/lib/guile/2.2/ccache/scripts/generate-autoload.go +0 -0
  221. data/lib/guile/2.2/ccache/scripts/help.go +0 -0
  222. data/lib/guile/2.2/ccache/scripts/lint.go +0 -0
  223. data/lib/guile/2.2/ccache/scripts/list.go +0 -0
  224. data/lib/guile/2.2/ccache/scripts/punify.go +0 -0
  225. data/lib/guile/2.2/ccache/scripts/read-rfc822.go +0 -0
  226. data/lib/guile/2.2/ccache/scripts/read-scheme-source.go +0 -0
  227. data/lib/guile/2.2/ccache/scripts/read-text-outline.go +0 -0
  228. data/lib/guile/2.2/ccache/scripts/scan-api.go +0 -0
  229. data/lib/guile/2.2/ccache/scripts/snarf-check-and-output-texi.go +0 -0
  230. data/lib/guile/2.2/ccache/scripts/snarf-guile-m4-docs.go +0 -0
  231. data/lib/guile/2.2/ccache/scripts/summarize-guile-TODO.go +0 -0
  232. data/lib/guile/2.2/ccache/scripts/use2dot.go +0 -0
  233. data/lib/guile/2.2/ccache/srfi/srfi-1.go +0 -0
  234. data/lib/guile/2.2/ccache/srfi/srfi-10.go +0 -0
  235. data/lib/guile/2.2/ccache/srfi/srfi-11.go +0 -0
  236. data/lib/guile/2.2/ccache/srfi/srfi-111.go +0 -0
  237. data/lib/guile/2.2/ccache/srfi/srfi-13.go +0 -0
  238. data/lib/guile/2.2/ccache/srfi/srfi-14.go +0 -0
  239. data/lib/guile/2.2/ccache/srfi/srfi-16.go +0 -0
  240. data/lib/guile/2.2/ccache/srfi/srfi-17.go +0 -0
  241. data/lib/guile/2.2/ccache/srfi/srfi-18.go +0 -0
  242. data/lib/guile/2.2/ccache/srfi/srfi-19.go +0 -0
  243. data/lib/guile/2.2/ccache/srfi/srfi-2.go +0 -0
  244. data/lib/guile/2.2/ccache/srfi/srfi-26.go +0 -0
  245. data/lib/guile/2.2/ccache/srfi/srfi-27.go +0 -0
  246. data/lib/guile/2.2/ccache/srfi/srfi-28.go +0 -0
  247. data/lib/guile/2.2/ccache/srfi/srfi-31.go +0 -0
  248. data/lib/guile/2.2/ccache/srfi/srfi-34.go +0 -0
  249. data/lib/guile/2.2/ccache/srfi/srfi-35.go +0 -0
  250. data/lib/guile/2.2/ccache/srfi/srfi-37.go +0 -0
  251. data/lib/guile/2.2/ccache/srfi/srfi-38.go +0 -0
  252. data/lib/guile/2.2/ccache/srfi/srfi-39.go +0 -0
  253. data/lib/guile/2.2/ccache/srfi/srfi-4/gnu.go +0 -0
  254. data/lib/guile/2.2/ccache/srfi/srfi-4.go +0 -0
  255. data/lib/guile/2.2/ccache/srfi/srfi-41.go +0 -0
  256. data/lib/guile/2.2/ccache/srfi/srfi-42.go +0 -0
  257. data/lib/guile/2.2/ccache/srfi/srfi-43.go +0 -0
  258. data/lib/guile/2.2/ccache/srfi/srfi-45.go +0 -0
  259. data/lib/guile/2.2/ccache/srfi/srfi-6.go +0 -0
  260. data/lib/guile/2.2/ccache/srfi/srfi-60.go +0 -0
  261. data/lib/guile/2.2/ccache/srfi/srfi-64.go +0 -0
  262. data/lib/guile/2.2/ccache/srfi/srfi-67.go +0 -0
  263. data/lib/guile/2.2/ccache/srfi/srfi-69.go +0 -0
  264. data/lib/guile/2.2/ccache/srfi/srfi-71.go +0 -0
  265. data/lib/guile/2.2/ccache/srfi/srfi-8.go +0 -0
  266. data/lib/guile/2.2/ccache/srfi/srfi-88.go +0 -0
  267. data/lib/guile/2.2/ccache/srfi/srfi-9/gnu.go +0 -0
  268. data/lib/guile/2.2/ccache/srfi/srfi-9.go +0 -0
  269. data/lib/guile/2.2/ccache/srfi/srfi-98.go +0 -0
  270. data/lib/guile/2.2/ccache/statprof.go +0 -0
  271. data/lib/guile/2.2/ccache/sxml/apply-templates.go +0 -0
  272. data/lib/guile/2.2/ccache/sxml/fold.go +0 -0
  273. data/lib/guile/2.2/ccache/sxml/match.go +0 -0
  274. data/lib/guile/2.2/ccache/sxml/simple.go +0 -0
  275. data/lib/guile/2.2/ccache/sxml/ssax/input-parse.go +0 -0
  276. data/lib/guile/2.2/ccache/sxml/ssax.go +0 -0
  277. data/lib/guile/2.2/ccache/sxml/transform.go +0 -0
  278. data/lib/guile/2.2/ccache/sxml/xpath.go +0 -0
  279. data/lib/guile/2.2/ccache/system/base/ck.go +0 -0
  280. data/lib/guile/2.2/ccache/system/base/compile.go +0 -0
  281. data/lib/guile/2.2/ccache/system/base/lalr.go +0 -0
  282. data/lib/guile/2.2/ccache/system/base/language.go +0 -0
  283. data/lib/guile/2.2/ccache/system/base/message.go +0 -0
  284. data/lib/guile/2.2/ccache/system/base/pmatch.go +0 -0
  285. data/lib/guile/2.2/ccache/system/base/syntax.go +0 -0
  286. data/lib/guile/2.2/ccache/system/base/target.go +0 -0
  287. data/lib/guile/2.2/ccache/system/base/types.go +0 -0
  288. data/lib/guile/2.2/ccache/system/foreign-object.go +0 -0
  289. data/lib/guile/2.2/ccache/system/foreign.go +0 -0
  290. data/lib/guile/2.2/ccache/system/repl/command.go +0 -0
  291. data/lib/guile/2.2/ccache/system/repl/common.go +0 -0
  292. data/lib/guile/2.2/ccache/system/repl/coop-server.go +0 -0
  293. data/lib/guile/2.2/ccache/system/repl/debug.go +0 -0
  294. data/lib/guile/2.2/ccache/system/repl/error-handling.go +0 -0
  295. data/lib/guile/2.2/ccache/system/repl/repl.go +0 -0
  296. data/lib/guile/2.2/ccache/system/repl/server.go +0 -0
  297. data/lib/guile/2.2/ccache/system/syntax.go +0 -0
  298. data/lib/guile/2.2/ccache/system/vm/assembler.go +0 -0
  299. data/lib/guile/2.2/ccache/system/vm/coverage.go +0 -0
  300. data/lib/guile/2.2/ccache/system/vm/debug.go +0 -0
  301. data/lib/guile/2.2/ccache/system/vm/disassembler.go +0 -0
  302. data/lib/guile/2.2/ccache/system/vm/dwarf.go +0 -0
  303. data/lib/guile/2.2/ccache/system/vm/elf.go +0 -0
  304. data/lib/guile/2.2/ccache/system/vm/frame.go +0 -0
  305. data/lib/guile/2.2/ccache/system/vm/inspect.go +0 -0
  306. data/lib/guile/2.2/ccache/system/vm/linker.go +0 -0
  307. data/lib/guile/2.2/ccache/system/vm/loader.go +0 -0
  308. data/lib/guile/2.2/ccache/system/vm/program.go +0 -0
  309. data/lib/guile/2.2/ccache/system/vm/trace.go +0 -0
  310. data/lib/guile/2.2/ccache/system/vm/trap-state.go +0 -0
  311. data/lib/guile/2.2/ccache/system/vm/traps.go +0 -0
  312. data/lib/guile/2.2/ccache/system/vm/vm.go +0 -0
  313. data/lib/guile/2.2/ccache/system/xref.go +0 -0
  314. data/lib/guile/2.2/ccache/texinfo/docbook.go +0 -0
  315. data/lib/guile/2.2/ccache/texinfo/html.go +0 -0
  316. data/lib/guile/2.2/ccache/texinfo/indexing.go +0 -0
  317. data/lib/guile/2.2/ccache/texinfo/plain-text.go +0 -0
  318. data/lib/guile/2.2/ccache/texinfo/reflection.go +0 -0
  319. data/lib/guile/2.2/ccache/texinfo/serialize.go +0 -0
  320. data/lib/guile/2.2/ccache/texinfo/string-utils.go +0 -0
  321. data/lib/guile/2.2/ccache/texinfo.go +0 -0
  322. data/lib/guile/2.2/ccache/web/client.go +0 -0
  323. data/lib/guile/2.2/ccache/web/http.go +0 -0
  324. data/lib/guile/2.2/ccache/web/request.go +0 -0
  325. data/lib/guile/2.2/ccache/web/response.go +0 -0
  326. data/lib/guile/2.2/ccache/web/server/http.go +0 -0
  327. data/lib/guile/2.2/ccache/web/server.go +0 -0
  328. data/lib/guile/2.2/ccache/web/uri.go +0 -0
  329. data/lib/lilypond/2.24.1/ccache/lily/accreg.go +0 -0
  330. data/lib/lilypond/2.24.1/ccache/lily/auto-beam.go +0 -0
  331. data/lib/lilypond/2.24.1/ccache/lily/autochange.go +0 -0
  332. data/lib/lilypond/2.24.1/ccache/lily/backend-library.go +0 -0
  333. data/lib/lilypond/2.24.1/ccache/lily/bar-line.go +0 -0
  334. data/lib/lilypond/2.24.1/ccache/lily/breath.go +0 -0
  335. data/lib/lilypond/2.24.1/ccache/lily/c++.go +0 -0
  336. data/lib/lilypond/2.24.1/ccache/lily/chord-entry.go +0 -0
  337. data/lib/lilypond/2.24.1/ccache/lily/chord-ignatzek-names.go +0 -0
  338. data/lib/lilypond/2.24.1/ccache/lily/chord-name.go +0 -0
  339. data/lib/lilypond/2.24.1/ccache/lily/clip-region.go +0 -0
  340. data/lib/lilypond/2.24.1/ccache/lily/color.go +0 -0
  341. data/lib/lilypond/2.24.1/ccache/lily/curried-definitions.go +0 -0
  342. data/lib/lilypond/2.24.1/ccache/lily/define-context-properties.go +0 -0
  343. data/lib/lilypond/2.24.1/ccache/lily/define-event-classes.go +0 -0
  344. data/lib/lilypond/2.24.1/ccache/lily/define-grob-interfaces.go +0 -0
  345. data/lib/lilypond/2.24.1/ccache/lily/define-grob-properties.go +0 -0
  346. data/lib/lilypond/2.24.1/ccache/lily/define-grobs.go +0 -0
  347. data/lib/lilypond/2.24.1/ccache/lily/define-markup-commands.go +0 -0
  348. data/lib/lilypond/2.24.1/ccache/lily/define-music-callbacks.go +0 -0
  349. data/lib/lilypond/2.24.1/ccache/lily/define-music-display-methods.go +0 -0
  350. data/lib/lilypond/2.24.1/ccache/lily/define-music-properties.go +0 -0
  351. data/lib/lilypond/2.24.1/ccache/lily/define-music-types.go +0 -0
  352. data/lib/lilypond/2.24.1/ccache/lily/define-note-names.go +0 -0
  353. data/lib/lilypond/2.24.1/ccache/lily/define-stencil-commands.go +0 -0
  354. data/lib/lilypond/2.24.1/ccache/lily/define-woodwind-diagrams.go +0 -0
  355. data/lib/lilypond/2.24.1/ccache/lily/display-lily.go +0 -0
  356. data/lib/lilypond/2.24.1/ccache/lily/display-woodwind-diagrams.go +0 -0
  357. data/lib/lilypond/2.24.1/ccache/lily/file-cache.go +0 -0
  358. data/lib/lilypond/2.24.1/ccache/lily/flag-styles.go +0 -0
  359. data/lib/lilypond/2.24.1/ccache/lily/font-encodings.go +0 -0
  360. data/lib/lilypond/2.24.1/ccache/lily/font.go +0 -0
  361. data/lib/lilypond/2.24.1/ccache/lily/framework-cairo.go +0 -0
  362. data/lib/lilypond/2.24.1/ccache/lily/framework-ps.go +0 -0
  363. data/lib/lilypond/2.24.1/ccache/lily/framework-svg.go +0 -0
  364. data/lib/lilypond/2.24.1/ccache/lily/fret-diagrams.go +0 -0
  365. data/lib/lilypond/2.24.1/ccache/lily/graphviz.go +0 -0
  366. data/lib/lilypond/2.24.1/ccache/lily/harp-pedals.go +0 -0
  367. data/lib/lilypond/2.24.1/ccache/lily/layout-beam.go +0 -0
  368. data/lib/lilypond/2.24.1/ccache/lily/layout-slur.go +0 -0
  369. data/lib/lilypond/2.24.1/ccache/lily/lily-library.go +0 -0
  370. data/lib/lilypond/2.24.1/ccache/lily/lily.go +0 -0
  371. data/lib/lilypond/2.24.1/ccache/lily/ly-syntax-constructors.go +0 -0
  372. data/lib/lilypond/2.24.1/ccache/lily/markup-macros.go +0 -0
  373. data/lib/lilypond/2.24.1/ccache/lily/markup.go +0 -0
  374. data/lib/lilypond/2.24.1/ccache/lily/midi.go +0 -0
  375. data/lib/lilypond/2.24.1/ccache/lily/modal-transforms.go +0 -0
  376. data/lib/lilypond/2.24.1/ccache/lily/music-functions.go +0 -0
  377. data/lib/lilypond/2.24.1/ccache/lily/output-lib.go +0 -0
  378. data/lib/lilypond/2.24.1/ccache/lily/output-ps.go +0 -0
  379. data/lib/lilypond/2.24.1/ccache/lily/output-svg.go +0 -0
  380. data/lib/lilypond/2.24.1/ccache/lily/page.go +0 -0
  381. data/lib/lilypond/2.24.1/ccache/lily/paper-system.go +0 -0
  382. data/lib/lilypond/2.24.1/ccache/lily/paper.go +0 -0
  383. data/lib/lilypond/2.24.1/ccache/lily/parser-clef.go +0 -0
  384. data/lib/lilypond/2.24.1/ccache/lily/parser-ly-from-scheme.go +0 -0
  385. data/lib/lilypond/2.24.1/ccache/lily/part-combiner.go +0 -0
  386. data/lib/lilypond/2.24.1/ccache/lily/predefined-fretboards.go +0 -0
  387. data/lib/lilypond/2.24.1/ccache/lily/ps-to-png.go +0 -0
  388. data/lib/lilypond/2.24.1/ccache/lily/scheme-engravers.go +0 -0
  389. data/lib/lilypond/2.24.1/ccache/lily/scheme-performers.go +0 -0
  390. data/lib/lilypond/2.24.1/ccache/lily/script.go +0 -0
  391. data/lib/lilypond/2.24.1/ccache/lily/skyline.go +0 -0
  392. data/lib/lilypond/2.24.1/ccache/lily/song-util.go +0 -0
  393. data/lib/lilypond/2.24.1/ccache/lily/song.go +0 -0
  394. data/lib/lilypond/2.24.1/ccache/lily/stencil.go +0 -0
  395. data/lib/lilypond/2.24.1/ccache/lily/tablature.go +0 -0
  396. data/lib/lilypond/2.24.1/ccache/lily/time-signature-settings.go +0 -0
  397. data/lib/lilypond/2.24.1/ccache/lily/time-signature.go +0 -0
  398. data/lib/lilypond/2.24.1/ccache/lily/titling.go +0 -0
  399. data/lib/lilypond/2.24.1/ccache/lily/to-xml.go +0 -0
  400. data/lib/lilypond/2.24.1/ccache/lily/translation-functions.go +0 -0
  401. data/share/emacs/site-lisp/lilypond-font-lock.el +208 -0
  402. data/share/emacs/site-lisp/lilypond-indent.el +605 -0
  403. data/share/emacs/site-lisp/lilypond-init.el +21 -0
  404. data/share/emacs/site-lisp/lilypond-mode.el +1204 -0
  405. data/share/emacs/site-lisp/lilypond-song.el +556 -0
  406. data/share/emacs/site-lisp/lilypond-what-beat.el +279 -0
  407. data/share/emacs/site-lisp/lilypond-words.el +1428 -0
  408. data/share/guile/2.2/guile-procedures.txt +8860 -0
  409. data/share/guile/2.2/ice-9/and-let-star.scm +73 -0
  410. data/share/guile/2.2/ice-9/arrays.scm +70 -0
  411. data/share/guile/2.2/ice-9/atomic.scm +38 -0
  412. data/share/guile/2.2/ice-9/binary-ports.scm +53 -0
  413. data/share/guile/2.2/ice-9/boot-9.scm +4131 -0
  414. data/share/guile/2.2/ice-9/buffered-input.scm +109 -0
  415. data/share/guile/2.2/ice-9/calling.scm +326 -0
  416. data/share/guile/2.2/ice-9/channel.scm +170 -0
  417. data/share/guile/2.2/ice-9/command-line.scm +477 -0
  418. data/share/guile/2.2/ice-9/common-list.scm +278 -0
  419. data/share/guile/2.2/ice-9/control.scm +110 -0
  420. data/share/guile/2.2/ice-9/curried-definitions.scm +57 -0
  421. data/share/guile/2.2/ice-9/debug.scm +25 -0
  422. data/share/guile/2.2/ice-9/deprecated.scm +93 -0
  423. data/share/guile/2.2/ice-9/documentation.scm +203 -0
  424. data/share/guile/2.2/ice-9/eval-string.scm +90 -0
  425. data/share/guile/2.2/ice-9/eval.scm +723 -0
  426. data/share/guile/2.2/ice-9/expect.scm +171 -0
  427. data/share/guile/2.2/ice-9/fdes-finalizers.scm +25 -0
  428. data/share/guile/2.2/ice-9/format.scm +1626 -0
  429. data/share/guile/2.2/ice-9/ftw.scm +564 -0
  430. data/share/guile/2.2/ice-9/futures.scm +308 -0
  431. data/share/guile/2.2/ice-9/gap-buffer.scm +283 -0
  432. data/share/guile/2.2/ice-9/getopt-long.scm +371 -0
  433. data/share/guile/2.2/ice-9/hash-table.scm +45 -0
  434. data/share/guile/2.2/ice-9/hcons.scm +80 -0
  435. data/share/guile/2.2/ice-9/history.scm +65 -0
  436. data/share/guile/2.2/ice-9/i18n.scm +531 -0
  437. data/share/guile/2.2/ice-9/iconv.scm +95 -0
  438. data/share/guile/2.2/ice-9/lineio.scm +115 -0
  439. data/share/guile/2.2/ice-9/list.scm +36 -0
  440. data/share/guile/2.2/ice-9/local-eval.scm +261 -0
  441. data/share/guile/2.2/ice-9/ls.scm +94 -0
  442. data/share/guile/2.2/ice-9/mapping.scm +118 -0
  443. data/share/guile/2.2/ice-9/match.scm +59 -0
  444. data/share/guile/2.2/ice-9/match.upstream.scm +917 -0
  445. data/share/guile/2.2/ice-9/networking.scm +94 -0
  446. data/share/guile/2.2/ice-9/null.scm +34 -0
  447. data/share/guile/2.2/ice-9/occam-channel.scm +261 -0
  448. data/share/guile/2.2/ice-9/optargs.scm +381 -0
  449. data/share/guile/2.2/ice-9/peg/cache.scm +45 -0
  450. data/share/guile/2.2/ice-9/peg/codegen.scm +359 -0
  451. data/share/guile/2.2/ice-9/peg/simplify-tree.scm +97 -0
  452. data/share/guile/2.2/ice-9/peg/string-peg.scm +273 -0
  453. data/share/guile/2.2/ice-9/peg/using-parsers.scm +116 -0
  454. data/share/guile/2.2/ice-9/peg.scm +42 -0
  455. data/share/guile/2.2/ice-9/poe.scm +116 -0
  456. data/share/guile/2.2/ice-9/poll.scm +172 -0
  457. data/share/guile/2.2/ice-9/popen.scm +178 -0
  458. data/share/guile/2.2/ice-9/ports.scm +566 -0
  459. data/share/guile/2.2/ice-9/posix.scm +75 -0
  460. data/share/guile/2.2/ice-9/pretty-print.scm +483 -0
  461. data/share/guile/2.2/ice-9/psyntax-pp.scm +3542 -0
  462. data/share/guile/2.2/ice-9/psyntax.scm +3326 -0
  463. data/share/guile/2.2/ice-9/q.scm +153 -0
  464. data/share/guile/2.2/ice-9/quasisyntax.scm +136 -0
  465. data/share/guile/2.2/ice-9/r5rs.scm +45 -0
  466. data/share/guile/2.2/ice-9/r6rs-libraries.scm +242 -0
  467. data/share/guile/2.2/ice-9/rdelim.scm +208 -0
  468. data/share/guile/2.2/ice-9/receive.scm +26 -0
  469. data/share/guile/2.2/ice-9/regex.scm +229 -0
  470. data/share/guile/2.2/ice-9/runq.scm +241 -0
  471. data/share/guile/2.2/ice-9/rw.scm +27 -0
  472. data/share/guile/2.2/ice-9/safe-r5rs.scm +145 -0
  473. data/share/guile/2.2/ice-9/safe.scm +34 -0
  474. data/share/guile/2.2/ice-9/sandbox.scm +1399 -0
  475. data/share/guile/2.2/ice-9/save-stack.scm +58 -0
  476. data/share/guile/2.2/ice-9/scm-style-repl.scm +279 -0
  477. data/share/guile/2.2/ice-9/serialize.scm +114 -0
  478. data/share/guile/2.2/ice-9/session.scm +530 -0
  479. data/share/guile/2.2/ice-9/slib.scm +33 -0
  480. data/share/guile/2.2/ice-9/stack-catch.scm +47 -0
  481. data/share/guile/2.2/ice-9/streams.scm +168 -0
  482. data/share/guile/2.2/ice-9/string-fun.scm +280 -0
  483. data/share/guile/2.2/ice-9/suspendable-ports.scm +788 -0
  484. data/share/guile/2.2/ice-9/syncase.scm +37 -0
  485. data/share/guile/2.2/ice-9/textual-ports.scm +70 -0
  486. data/share/guile/2.2/ice-9/threads.scm +392 -0
  487. data/share/guile/2.2/ice-9/time.scm +58 -0
  488. data/share/guile/2.2/ice-9/top-repl.scm +78 -0
  489. data/share/guile/2.2/ice-9/unicode.scm +26 -0
  490. data/share/guile/2.2/ice-9/vlist.scm +595 -0
  491. data/share/guile/2.2/ice-9/weak-vector.scm +31 -0
  492. data/share/guile/2.2/language/brainfuck/compile-scheme.scm +123 -0
  493. data/share/guile/2.2/language/brainfuck/compile-tree-il.scm +184 -0
  494. data/share/guile/2.2/language/brainfuck/parse.scm +95 -0
  495. data/share/guile/2.2/language/brainfuck/spec.scm +43 -0
  496. data/share/guile/2.2/language/bytecode/spec.scm +42 -0
  497. data/share/guile/2.2/language/bytecode.scm +104 -0
  498. data/share/guile/2.2/language/cps/closure-conversion.scm +848 -0
  499. data/share/guile/2.2/language/cps/compile-bytecode.scm +610 -0
  500. data/share/guile/2.2/language/cps/constructors.scm +106 -0
  501. data/share/guile/2.2/language/cps/contification.scm +448 -0
  502. data/share/guile/2.2/language/cps/cse.scm +414 -0
  503. data/share/guile/2.2/language/cps/dce.scm +363 -0
  504. data/share/guile/2.2/language/cps/effects-analysis.scm +597 -0
  505. data/share/guile/2.2/language/cps/elide-values.scm +88 -0
  506. data/share/guile/2.2/language/cps/handle-interrupts.scm +69 -0
  507. data/share/guile/2.2/language/cps/intmap.scm +765 -0
  508. data/share/guile/2.2/language/cps/intset.scm +830 -0
  509. data/share/guile/2.2/language/cps/licm.scm +308 -0
  510. data/share/guile/2.2/language/cps/optimize.scm +135 -0
  511. data/share/guile/2.2/language/cps/peel-loops.scm +287 -0
  512. data/share/guile/2.2/language/cps/primitives.scm +141 -0
  513. data/share/guile/2.2/language/cps/prune-bailouts.scm +86 -0
  514. data/share/guile/2.2/language/cps/prune-top-level-scopes.scm +63 -0
  515. data/share/guile/2.2/language/cps/reify-primitives.scm +179 -0
  516. data/share/guile/2.2/language/cps/renumber.scm +217 -0
  517. data/share/guile/2.2/language/cps/rotate-loops.scm +239 -0
  518. data/share/guile/2.2/language/cps/self-references.scm +79 -0
  519. data/share/guile/2.2/language/cps/simplify.scm +274 -0
  520. data/share/guile/2.2/language/cps/slot-allocation.scm +1058 -0
  521. data/share/guile/2.2/language/cps/spec.scm +51 -0
  522. data/share/guile/2.2/language/cps/specialize-numbers.scm +724 -0
  523. data/share/guile/2.2/language/cps/specialize-primcalls.scm +87 -0
  524. data/share/guile/2.2/language/cps/split-rec.scm +174 -0
  525. data/share/guile/2.2/language/cps/type-checks.scm +72 -0
  526. data/share/guile/2.2/language/cps/type-fold.scm +455 -0
  527. data/share/guile/2.2/language/cps/types.scm +1826 -0
  528. data/share/guile/2.2/language/cps/utils.scm +550 -0
  529. data/share/guile/2.2/language/cps/verify.scm +304 -0
  530. data/share/guile/2.2/language/cps/with-cps.scm +145 -0
  531. data/share/guile/2.2/language/cps.scm +358 -0
  532. data/share/guile/2.2/language/ecmascript/array.scm +121 -0
  533. data/share/guile/2.2/language/ecmascript/base.scm +251 -0
  534. data/share/guile/2.2/language/ecmascript/compile-tree-il.scm +576 -0
  535. data/share/guile/2.2/language/ecmascript/function.scm +78 -0
  536. data/share/guile/2.2/language/ecmascript/impl.scm +169 -0
  537. data/share/guile/2.2/language/ecmascript/parse.scm +352 -0
  538. data/share/guile/2.2/language/ecmascript/spec.scm +37 -0
  539. data/share/guile/2.2/language/ecmascript/tokenize.scm +513 -0
  540. data/share/guile/2.2/language/elisp/bindings.scm +107 -0
  541. data/share/guile/2.2/language/elisp/boot.el +617 -0
  542. data/share/guile/2.2/language/elisp/compile-tree-il.scm +812 -0
  543. data/share/guile/2.2/language/elisp/falias.scm +47 -0
  544. data/share/guile/2.2/language/elisp/lexer.scm +430 -0
  545. data/share/guile/2.2/language/elisp/parser.scm +222 -0
  546. data/share/guile/2.2/language/elisp/runtime/function-slot.scm +63 -0
  547. data/share/guile/2.2/language/elisp/runtime/value-slot.scm +24 -0
  548. data/share/guile/2.2/language/elisp/runtime.scm +153 -0
  549. data/share/guile/2.2/language/elisp/spec.scm +43 -0
  550. data/share/guile/2.2/language/scheme/compile-tree-il.scm +33 -0
  551. data/share/guile/2.2/language/scheme/decompile-tree-il.scm +796 -0
  552. data/share/guile/2.2/language/scheme/spec.scm +63 -0
  553. data/share/guile/2.2/language/tree-il/analyze.scm +1568 -0
  554. data/share/guile/2.2/language/tree-il/canonicalize.scm +82 -0
  555. data/share/guile/2.2/language/tree-il/compile-cps.scm +1149 -0
  556. data/share/guile/2.2/language/tree-il/debug.scm +246 -0
  557. data/share/guile/2.2/language/tree-il/effects.scm +591 -0
  558. data/share/guile/2.2/language/tree-il/fix-letrec.scm +314 -0
  559. data/share/guile/2.2/language/tree-il/optimize.scm +43 -0
  560. data/share/guile/2.2/language/tree-il/peval.scm +1669 -0
  561. data/share/guile/2.2/language/tree-il/primitives.scm +630 -0
  562. data/share/guile/2.2/language/tree-il/spec.scm +46 -0
  563. data/share/guile/2.2/language/tree-il.scm +630 -0
  564. data/share/guile/2.2/language/value/spec.scm +30 -0
  565. data/share/guile/2.2/oop/goops/accessors.scm +72 -0
  566. data/share/guile/2.2/oop/goops/active-slot.scm +63 -0
  567. data/share/guile/2.2/oop/goops/composite-slot.scm +83 -0
  568. data/share/guile/2.2/oop/goops/describe.scm +189 -0
  569. data/share/guile/2.2/oop/goops/internal.scm +30 -0
  570. data/share/guile/2.2/oop/goops/save.scm +874 -0
  571. data/share/guile/2.2/oop/goops/simple.scm +30 -0
  572. data/share/guile/2.2/oop/goops/stklos.scm +74 -0
  573. data/share/guile/2.2/oop/goops.scm +3176 -0
  574. data/share/guile/2.2/rnrs/arithmetic/bitwise.scm +92 -0
  575. data/share/guile/2.2/rnrs/arithmetic/fixnums.scm +291 -0
  576. data/share/guile/2.2/rnrs/arithmetic/flonums.scm +203 -0
  577. data/share/guile/2.2/rnrs/base.scm +291 -0
  578. data/share/guile/2.2/rnrs/bytevectors.scm +83 -0
  579. data/share/guile/2.2/rnrs/conditions.scm +225 -0
  580. data/share/guile/2.2/rnrs/control.scm +22 -0
  581. data/share/guile/2.2/rnrs/enums.scm +152 -0
  582. data/share/guile/2.2/rnrs/eval.scm +39 -0
  583. data/share/guile/2.2/rnrs/exceptions.scm +276 -0
  584. data/share/guile/2.2/rnrs/files.scm +96 -0
  585. data/share/guile/2.2/rnrs/hashtables.scm +190 -0
  586. data/share/guile/2.2/rnrs/io/ports.scm +554 -0
  587. data/share/guile/2.2/rnrs/io/simple.scm +167 -0
  588. data/share/guile/2.2/rnrs/lists.scm +55 -0
  589. data/share/guile/2.2/rnrs/mutable-pairs.scm +23 -0
  590. data/share/guile/2.2/rnrs/mutable-strings.scm +23 -0
  591. data/share/guile/2.2/rnrs/programs.scm +22 -0
  592. data/share/guile/2.2/rnrs/r5rs.scm +34 -0
  593. data/share/guile/2.2/rnrs/records/inspection.scm +81 -0
  594. data/share/guile/2.2/rnrs/records/procedural.scm +289 -0
  595. data/share/guile/2.2/rnrs/records/syntactic.scm +248 -0
  596. data/share/guile/2.2/rnrs/sorting.scm +27 -0
  597. data/share/guile/2.2/rnrs/syntax-case.scm +68 -0
  598. data/share/guile/2.2/rnrs/unicode.scm +104 -0
  599. data/share/guile/2.2/rnrs.scm +289 -0
  600. data/share/guile/2.2/scripts/api-diff.scm +179 -0
  601. data/share/guile/2.2/scripts/autofrisk.scm +218 -0
  602. data/share/guile/2.2/scripts/compile.scm +273 -0
  603. data/share/guile/2.2/scripts/disassemble.scm +38 -0
  604. data/share/guile/2.2/scripts/display-commentary.scm +67 -0
  605. data/share/guile/2.2/scripts/doc-snarf.scm +439 -0
  606. data/share/guile/2.2/scripts/frisk.scm +290 -0
  607. data/share/guile/2.2/scripts/generate-autoload.scm +144 -0
  608. data/share/guile/2.2/scripts/help.scm +188 -0
  609. data/share/guile/2.2/scripts/lint.scm +318 -0
  610. data/share/guile/2.2/scripts/list.scm +91 -0
  611. data/share/guile/2.2/scripts/punify.scm +87 -0
  612. data/share/guile/2.2/scripts/read-rfc822.scm +131 -0
  613. data/share/guile/2.2/scripts/read-scheme-source.scm +282 -0
  614. data/share/guile/2.2/scripts/read-text-outline.scm +253 -0
  615. data/share/guile/2.2/scripts/scan-api.scm +223 -0
  616. data/share/guile/2.2/scripts/snarf-check-and-output-texi.scm +303 -0
  617. data/share/guile/2.2/scripts/snarf-guile-m4-docs.scm +86 -0
  618. data/share/guile/2.2/scripts/summarize-guile-TODO.scm +213 -0
  619. data/share/guile/2.2/scripts/use2dot.scm +110 -0
  620. data/share/guile/2.2/srfi/srfi-1.scm +1061 -0
  621. data/share/guile/2.2/srfi/srfi-10.scm +89 -0
  622. data/share/guile/2.2/srfi/srfi-11.scm +146 -0
  623. data/share/guile/2.2/srfi/srfi-111.scm +37 -0
  624. data/share/guile/2.2/srfi/srfi-13.scm +132 -0
  625. data/share/guile/2.2/srfi/srfi-14.scm +99 -0
  626. data/share/guile/2.2/srfi/srfi-16.scm +51 -0
  627. data/share/guile/2.2/srfi/srfi-17.scm +174 -0
  628. data/share/guile/2.2/srfi/srfi-18.scm +382 -0
  629. data/share/guile/2.2/srfi/srfi-19.scm +1470 -0
  630. data/share/guile/2.2/srfi/srfi-2.scm +31 -0
  631. data/share/guile/2.2/srfi/srfi-26.scm +66 -0
  632. data/share/guile/2.2/srfi/srfi-27.scm +96 -0
  633. data/share/guile/2.2/srfi/srfi-28.scm +34 -0
  634. data/share/guile/2.2/srfi/srfi-31.scm +35 -0
  635. data/share/guile/2.2/srfi/srfi-34.scm +84 -0
  636. data/share/guile/2.2/srfi/srfi-35.scm +351 -0
  637. data/share/guile/2.2/srfi/srfi-37.scm +234 -0
  638. data/share/guile/2.2/srfi/srfi-38.scm +207 -0
  639. data/share/guile/2.2/srfi/srfi-39.scm +55 -0
  640. data/share/guile/2.2/srfi/srfi-4/gnu.scm +80 -0
  641. data/share/guile/2.2/srfi/srfi-4.scm +118 -0
  642. data/share/guile/2.2/srfi/srfi-41.scm +505 -0
  643. data/share/guile/2.2/srfi/srfi-42/ec.scm +1053 -0
  644. data/share/guile/2.2/srfi/srfi-42.scm +66 -0
  645. data/share/guile/2.2/srfi/srfi-43.scm +1077 -0
  646. data/share/guile/2.2/srfi/srfi-45.scm +93 -0
  647. data/share/guile/2.2/srfi/srfi-6.scm +29 -0
  648. data/share/guile/2.2/srfi/srfi-60.scm +73 -0
  649. data/share/guile/2.2/srfi/srfi-64/testing.scm +1040 -0
  650. data/share/guile/2.2/srfi/srfi-64.scm +55 -0
  651. data/share/guile/2.2/srfi/srfi-67/compare.scm +686 -0
  652. data/share/guile/2.2/srfi/srfi-67.scm +88 -0
  653. data/share/guile/2.2/srfi/srfi-69.scm +336 -0
  654. data/share/guile/2.2/srfi/srfi-71.scm +267 -0
  655. data/share/guile/2.2/srfi/srfi-8.scm +31 -0
  656. data/share/guile/2.2/srfi/srfi-88.scm +53 -0
  657. data/share/guile/2.2/srfi/srfi-9/gnu.scm +168 -0
  658. data/share/guile/2.2/srfi/srfi-9.scm +351 -0
  659. data/share/guile/2.2/srfi/srfi-98.scm +44 -0
  660. data/share/guile/2.2/statprof.scm +988 -0
  661. data/share/guile/2.2/sxml/apply-templates.scm +102 -0
  662. data/share/guile/2.2/sxml/fold.scm +250 -0
  663. data/share/guile/2.2/sxml/match.scm +75 -0
  664. data/share/guile/2.2/sxml/simple.scm +408 -0
  665. data/share/guile/2.2/sxml/ssax/input-parse.scm +180 -0
  666. data/share/guile/2.2/sxml/ssax.scm +265 -0
  667. data/share/guile/2.2/sxml/sxml-match.ss +1181 -0
  668. data/share/guile/2.2/sxml/transform.scm +298 -0
  669. data/share/guile/2.2/sxml/upstream/SSAX.scm +3235 -0
  670. data/share/guile/2.2/sxml/upstream/SXML-tree-trans.scm +249 -0
  671. data/share/guile/2.2/sxml/upstream/SXPath-old.scm +1216 -0
  672. data/share/guile/2.2/sxml/upstream/assert.scm +35 -0
  673. data/share/guile/2.2/sxml/upstream/input-parse.scm +326 -0
  674. data/share/guile/2.2/sxml/xpath.scm +493 -0
  675. data/share/guile/2.2/system/base/ck.scm +55 -0
  676. data/share/guile/2.2/system/base/compile.scm +282 -0
  677. data/share/guile/2.2/system/base/lalr.scm +51 -0
  678. data/share/guile/2.2/system/base/lalr.upstream.scm +2096 -0
  679. data/share/guile/2.2/system/base/language.scm +119 -0
  680. data/share/guile/2.2/system/base/message.scm +238 -0
  681. data/share/guile/2.2/system/base/pmatch.scm +68 -0
  682. data/share/guile/2.2/system/base/syntax.scm +299 -0
  683. data/share/guile/2.2/system/base/target.scm +152 -0
  684. data/share/guile/2.2/system/base/types.scm +561 -0
  685. data/share/guile/2.2/system/foreign-object.scm +91 -0
  686. data/share/guile/2.2/system/foreign.scm +200 -0
  687. data/share/guile/2.2/system/repl/command.scm +946 -0
  688. data/share/guile/2.2/system/repl/common.scm +263 -0
  689. data/share/guile/2.2/system/repl/coop-server.scm +200 -0
  690. data/share/guile/2.2/system/repl/debug.scm +210 -0
  691. data/share/guile/2.2/system/repl/describe.scm +347 -0
  692. data/share/guile/2.2/system/repl/error-handling.scm +183 -0
  693. data/share/guile/2.2/system/repl/repl.scm +233 -0
  694. data/share/guile/2.2/system/repl/server.scm +332 -0
  695. data/share/guile/2.2/system/syntax.scm +33 -0
  696. data/share/guile/2.2/system/vm/assembler.scm +2614 -0
  697. data/share/guile/2.2/system/vm/coverage.scm +351 -0
  698. data/share/guile/2.2/system/vm/debug.scm +766 -0
  699. data/share/guile/2.2/system/vm/disassembler.scm +658 -0
  700. data/share/guile/2.2/system/vm/dwarf.scm +1852 -0
  701. data/share/guile/2.2/system/vm/elf.scm +1042 -0
  702. data/share/guile/2.2/system/vm/frame.scm +485 -0
  703. data/share/guile/2.2/system/vm/inspect.scm +188 -0
  704. data/share/guile/2.2/system/vm/linker.scm +732 -0
  705. data/share/guile/2.2/system/vm/loader.scm +27 -0
  706. data/share/guile/2.2/system/vm/program.scm +312 -0
  707. data/share/guile/2.2/system/vm/trace.scm +121 -0
  708. data/share/guile/2.2/system/vm/trap-state.scm +302 -0
  709. data/share/guile/2.2/system/vm/traps.scm +608 -0
  710. data/share/guile/2.2/system/vm/vm.scm +32 -0
  711. data/share/guile/2.2/system/xref.scm +369 -0
  712. data/share/guile/2.2/texinfo/docbook.scm +240 -0
  713. data/share/guile/2.2/texinfo/html.scm +279 -0
  714. data/share/guile/2.2/texinfo/indexing.scm +75 -0
  715. data/share/guile/2.2/texinfo/plain-text.scm +322 -0
  716. data/share/guile/2.2/texinfo/reflection.scm +585 -0
  717. data/share/guile/2.2/texinfo/serialize.scm +300 -0
  718. data/share/guile/2.2/texinfo/string-utils.scm +410 -0
  719. data/share/guile/2.2/texinfo.scm +1263 -0
  720. data/share/guile/2.2/web/client.scm +513 -0
  721. data/share/guile/2.2/web/http.scm +2043 -0
  722. data/share/guile/2.2/web/request.scm +326 -0
  723. data/share/guile/2.2/web/response.scm +379 -0
  724. data/share/guile/2.2/web/server/http.scm +183 -0
  725. data/share/guile/2.2/web/server.scm +397 -0
  726. data/share/guile/2.2/web/uri.scm +552 -0
  727. data/share/lilypond/2.24.1/fontconfig/0bd3dc0958fa2205aaaa8ebb13e2872b-le64.cache-8 +0 -0
  728. data/share/lilypond/2.24.1/fontconfig/188ac73a183f12857f63bb60a4a6d603-le64.cache-8 +0 -0
  729. data/share/lilypond/2.24.1/fontconfig/32b6488e5b8292a2e95c79d947e009e8-le64.cache-8 +0 -0
  730. data/share/lilypond/2.24.1/fontconfig/3830d5c3ddfd5cd38a049b759396e72e-le64.cache-8 +0 -0
  731. data/share/lilypond/2.24.1/fontconfig/3f7329c5293ffd510edef78f73874cfd-le64.cache-8 +0 -0
  732. data/share/lilypond/2.24.1/fontconfig/4c599c202bc5c08e2d34565a40eac3b2-le64.cache-8 +0 -0
  733. data/share/lilypond/2.24.1/fontconfig/57e423e26b20ab21d0f2f29c145174c3-le64.cache-8 +0 -0
  734. data/share/lilypond/2.24.1/fontconfig/7ef2298fde41cc6eeb7af42e48b7d293-le64.cache-8 +0 -0
  735. data/share/lilypond/2.24.1/fontconfig/826f6b6ef79022e2eac8af26bf4b62f2-le64.cache-8 +0 -0
  736. data/share/lilypond/2.24.1/fontconfig/945677eb7aeaf62f1d50efc3fb3ec7d8-le64.cache-8 +0 -0
  737. data/share/lilypond/2.24.1/fontconfig/95530828ff6c81d309f8258d8d02a23e-le64.cache-8 +0 -0
  738. data/share/lilypond/2.24.1/fontconfig/CACHEDIR.TAG +4 -0
  739. data/share/lilypond/2.24.1/fontconfig/bf3b770c553c462765856025a94f1ce6-le64.cache-8 +0 -0
  740. data/share/lilypond/2.24.1/fontconfig/c855463f699352c367813e37f3f70ea7-le64.cache-8 +0 -0
  741. data/share/lilypond/2.24.1/fontconfig/d3e5c4ee2ceb1fc347f91d4cefc53bc0-le64.cache-8 +0 -0
  742. data/share/lilypond/2.24.1/fontconfig/d589a48862398ed80a3d6066f4f56f4c-le64.cache-8 +0 -0
  743. data/share/lilypond/2.24.1/fontconfig/d82eb4fd963d448e2fcb7d7b793b5df3-le64.cache-8 +0 -0
  744. data/share/lilypond/2.24.1/fontconfig/e13b20fdb08344e0e664864cc2ede53d-le64.cache-8 +0 -0
  745. data/share/lilypond/2.24.1/fontconfig/e52a45a1c8c8fe895fc0fc8c4e6999b8-le64.cache-8 +0 -0
  746. data/share/lilypond/2.24.1/fontconfig/f1f2465696798768e9653f19e17ccdc8-le64.cache-8 +0 -0
  747. data/share/lilypond/2.24.1/fonts/00-lilypond-fonts.conf +99 -0
  748. data/share/lilypond/2.24.1/fonts/99-lilypond-fonts.conf +28 -0
  749. data/share/lilypond/2.24.1/fonts/otf/C059-BdIta.otf +0 -0
  750. data/share/lilypond/2.24.1/fonts/otf/C059-Bold.otf +0 -0
  751. data/share/lilypond/2.24.1/fonts/otf/C059-Italic.otf +0 -0
  752. data/share/lilypond/2.24.1/fonts/otf/C059-Roman.otf +0 -0
  753. data/share/lilypond/2.24.1/fonts/otf/NimbusMonoPS-Bold.otf +0 -0
  754. data/share/lilypond/2.24.1/fonts/otf/NimbusMonoPS-BoldItalic.otf +0 -0
  755. data/share/lilypond/2.24.1/fonts/otf/NimbusMonoPS-Italic.otf +0 -0
  756. data/share/lilypond/2.24.1/fonts/otf/NimbusMonoPS-Regular.otf +0 -0
  757. data/share/lilypond/2.24.1/fonts/otf/NimbusSans-Bold.otf +0 -0
  758. data/share/lilypond/2.24.1/fonts/otf/NimbusSans-BoldItalic.otf +0 -0
  759. data/share/lilypond/2.24.1/fonts/otf/NimbusSans-Italic.otf +0 -0
  760. data/share/lilypond/2.24.1/fonts/otf/NimbusSans-Regular.otf +0 -0
  761. data/share/lilypond/2.24.1/fonts/otf/emmentaler-11.otf +0 -0
  762. data/share/lilypond/2.24.1/fonts/otf/emmentaler-13.otf +0 -0
  763. data/share/lilypond/2.24.1/fonts/otf/emmentaler-14.otf +0 -0
  764. data/share/lilypond/2.24.1/fonts/otf/emmentaler-16.otf +0 -0
  765. data/share/lilypond/2.24.1/fonts/otf/emmentaler-18.otf +0 -0
  766. data/share/lilypond/2.24.1/fonts/otf/emmentaler-20.otf +0 -0
  767. data/share/lilypond/2.24.1/fonts/otf/emmentaler-23.otf +0 -0
  768. data/share/lilypond/2.24.1/fonts/otf/emmentaler-26.otf +0 -0
  769. data/share/lilypond/2.24.1/fonts/otf/emmentaler-brace.otf +0 -0
  770. data/share/lilypond/2.24.1/fonts/otf/texgyrecursor-bold.otf +0 -0
  771. data/share/lilypond/2.24.1/fonts/otf/texgyrecursor-bolditalic.otf +0 -0
  772. data/share/lilypond/2.24.1/fonts/otf/texgyrecursor-italic.otf +0 -0
  773. data/share/lilypond/2.24.1/fonts/otf/texgyrecursor-regular.otf +0 -0
  774. data/share/lilypond/2.24.1/fonts/otf/texgyreheros-bold.otf +0 -0
  775. data/share/lilypond/2.24.1/fonts/otf/texgyreheros-bolditalic.otf +0 -0
  776. data/share/lilypond/2.24.1/fonts/otf/texgyreheros-italic.otf +0 -0
  777. data/share/lilypond/2.24.1/fonts/otf/texgyreheros-regular.otf +0 -0
  778. data/share/lilypond/2.24.1/fonts/otf/texgyreschola-bold.otf +0 -0
  779. data/share/lilypond/2.24.1/fonts/otf/texgyreschola-bolditalic.otf +0 -0
  780. data/share/lilypond/2.24.1/fonts/otf/texgyreschola-italic.otf +0 -0
  781. data/share/lilypond/2.24.1/fonts/otf/texgyreschola-regular.otf +0 -0
  782. data/share/lilypond/2.24.1/fonts/source/common-modules-and-initialization.mf +26 -0
  783. data/share/lilypond/2.24.1/fonts/source/debugging-settings.mf +14 -0
  784. data/share/lilypond/2.24.1/fonts/source/declare-autometric-parameters.mf +9 -0
  785. data/share/lilypond/2.24.1/fonts/source/feta-accidentals.mf +58 -0
  786. data/share/lilypond/2.24.1/fonts/source/feta-accordion.mf +575 -0
  787. data/share/lilypond/2.24.1/fonts/source/feta-alphabet-generic.mf +16 -0
  788. data/share/lilypond/2.24.1/fonts/source/feta-alphabet11.mf +6 -0
  789. data/share/lilypond/2.24.1/fonts/source/feta-alphabet13.mf +6 -0
  790. data/share/lilypond/2.24.1/fonts/source/feta-alphabet14.mf +6 -0
  791. data/share/lilypond/2.24.1/fonts/source/feta-alphabet16.mf +6 -0
  792. data/share/lilypond/2.24.1/fonts/source/feta-alphabet18.mf +6 -0
  793. data/share/lilypond/2.24.1/fonts/source/feta-alphabet20.mf +6 -0
  794. data/share/lilypond/2.24.1/fonts/source/feta-alphabet23.mf +6 -0
  795. data/share/lilypond/2.24.1/fonts/source/feta-alphabet26.mf +6 -0
  796. data/share/lilypond/2.24.1/fonts/source/feta-arrow.mf +114 -0
  797. data/share/lilypond/2.24.1/fonts/source/feta-arrowheads.mf +171 -0
  798. data/share/lilypond/2.24.1/fonts/source/feta-autometric.mf +303 -0
  799. data/share/lilypond/2.24.1/fonts/source/feta-braces-a.mf +6 -0
  800. data/share/lilypond/2.24.1/fonts/source/feta-braces-b.mf +6 -0
  801. data/share/lilypond/2.24.1/fonts/source/feta-braces-c.mf +6 -0
  802. data/share/lilypond/2.24.1/fonts/source/feta-braces-d.mf +6 -0
  803. data/share/lilypond/2.24.1/fonts/source/feta-braces-e.mf +6 -0
  804. data/share/lilypond/2.24.1/fonts/source/feta-braces-f.mf +6 -0
  805. data/share/lilypond/2.24.1/fonts/source/feta-braces-g.mf +6 -0
  806. data/share/lilypond/2.24.1/fonts/source/feta-braces-generic.mf +47 -0
  807. data/share/lilypond/2.24.1/fonts/source/feta-braces-h.mf +6 -0
  808. data/share/lilypond/2.24.1/fonts/source/feta-braces-i.mf +6 -0
  809. data/share/lilypond/2.24.1/fonts/source/feta-braces.mf +125 -0
  810. data/share/lilypond/2.24.1/fonts/source/feta-brackettips.mf +100 -0
  811. data/share/lilypond/2.24.1/fonts/source/feta-clefs.mf +963 -0
  812. data/share/lilypond/2.24.1/fonts/source/feta-dots.mf +37 -0
  813. data/share/lilypond/2.24.1/fonts/source/feta-dynamics.mf +891 -0
  814. data/share/lilypond/2.24.1/fonts/source/feta-flags-generic.mf +17 -0
  815. data/share/lilypond/2.24.1/fonts/source/feta-flags.mf +926 -0
  816. data/share/lilypond/2.24.1/fonts/source/feta-flags11.mf +6 -0
  817. data/share/lilypond/2.24.1/fonts/source/feta-flags13.mf +6 -0
  818. data/share/lilypond/2.24.1/fonts/source/feta-flags14.mf +6 -0
  819. data/share/lilypond/2.24.1/fonts/source/feta-flags16.mf +6 -0
  820. data/share/lilypond/2.24.1/fonts/source/feta-flags18.mf +6 -0
  821. data/share/lilypond/2.24.1/fonts/source/feta-flags20.mf +6 -0
  822. data/share/lilypond/2.24.1/fonts/source/feta-flags23.mf +6 -0
  823. data/share/lilypond/2.24.1/fonts/source/feta-flags26.mf +6 -0
  824. data/share/lilypond/2.24.1/fonts/source/feta-flats.mf +668 -0
  825. data/share/lilypond/2.24.1/fonts/source/feta-macros.mf +506 -0
  826. data/share/lilypond/2.24.1/fonts/source/feta-naturals.mf +223 -0
  827. data/share/lilypond/2.24.1/fonts/source/feta-noteheads-generic.mf +17 -0
  828. data/share/lilypond/2.24.1/fonts/source/feta-noteheads.mf +2642 -0
  829. data/share/lilypond/2.24.1/fonts/source/feta-noteheads11.mf +6 -0
  830. data/share/lilypond/2.24.1/fonts/source/feta-noteheads13.mf +6 -0
  831. data/share/lilypond/2.24.1/fonts/source/feta-noteheads14.mf +6 -0
  832. data/share/lilypond/2.24.1/fonts/source/feta-noteheads16.mf +6 -0
  833. data/share/lilypond/2.24.1/fonts/source/feta-noteheads18.mf +6 -0
  834. data/share/lilypond/2.24.1/fonts/source/feta-noteheads20.mf +6 -0
  835. data/share/lilypond/2.24.1/fonts/source/feta-noteheads23.mf +6 -0
  836. data/share/lilypond/2.24.1/fonts/source/feta-noteheads26.mf +6 -0
  837. data/share/lilypond/2.24.1/fonts/source/feta-numbers.mf +1677 -0
  838. data/share/lilypond/2.24.1/fonts/source/feta-other-generic.mf +27 -0
  839. data/share/lilypond/2.24.1/fonts/source/feta-params.mf +323 -0
  840. data/share/lilypond/2.24.1/fonts/source/feta-parenthesis.mf +63 -0
  841. data/share/lilypond/2.24.1/fonts/source/feta-pedals.mf +355 -0
  842. data/share/lilypond/2.24.1/fonts/source/feta-rests.mf +890 -0
  843. data/share/lilypond/2.24.1/fonts/source/feta-scripts.mf +2206 -0
  844. data/share/lilypond/2.24.1/fonts/source/feta-sharps.mf +524 -0
  845. data/share/lilypond/2.24.1/fonts/source/feta-sori-koron.mf +325 -0
  846. data/share/lilypond/2.24.1/fonts/source/feta-ties.mf +72 -0
  847. data/share/lilypond/2.24.1/fonts/source/feta-timesignatures.mf +119 -0
  848. data/share/lilypond/2.24.1/fonts/source/feta-trills.mf +321 -0
  849. data/share/lilypond/2.24.1/fonts/source/feta11.mf +6 -0
  850. data/share/lilypond/2.24.1/fonts/source/feta13.mf +6 -0
  851. data/share/lilypond/2.24.1/fonts/source/feta14.mf +6 -0
  852. data/share/lilypond/2.24.1/fonts/source/feta16.mf +6 -0
  853. data/share/lilypond/2.24.1/fonts/source/feta18.mf +6 -0
  854. data/share/lilypond/2.24.1/fonts/source/feta20.mf +7 -0
  855. data/share/lilypond/2.24.1/fonts/source/feta23.mf +6 -0
  856. data/share/lilypond/2.24.1/fonts/source/feta26.mf +6 -0
  857. data/share/lilypond/2.24.1/fonts/source/parmesan-accidentals.mf +483 -0
  858. data/share/lilypond/2.24.1/fonts/source/parmesan-clefs.mf +1636 -0
  859. data/share/lilypond/2.24.1/fonts/source/parmesan-custodes.mf +503 -0
  860. data/share/lilypond/2.24.1/fonts/source/parmesan-dots.mf +62 -0
  861. data/share/lilypond/2.24.1/fonts/source/parmesan-flags.mf +319 -0
  862. data/share/lilypond/2.24.1/fonts/source/parmesan-macros.mf +225 -0
  863. data/share/lilypond/2.24.1/fonts/source/parmesan-noteheads-generic.mf +16 -0
  864. data/share/lilypond/2.24.1/fonts/source/parmesan-noteheads.mf +2191 -0
  865. data/share/lilypond/2.24.1/fonts/source/parmesan-noteheads11.mf +6 -0
  866. data/share/lilypond/2.24.1/fonts/source/parmesan-noteheads13.mf +6 -0
  867. data/share/lilypond/2.24.1/fonts/source/parmesan-noteheads14.mf +6 -0
  868. data/share/lilypond/2.24.1/fonts/source/parmesan-noteheads16.mf +6 -0
  869. data/share/lilypond/2.24.1/fonts/source/parmesan-noteheads18.mf +6 -0
  870. data/share/lilypond/2.24.1/fonts/source/parmesan-noteheads20.mf +6 -0
  871. data/share/lilypond/2.24.1/fonts/source/parmesan-noteheads23.mf +6 -0
  872. data/share/lilypond/2.24.1/fonts/source/parmesan-noteheads26.mf +6 -0
  873. data/share/lilypond/2.24.1/fonts/source/parmesan-other-generic.mf +24 -0
  874. data/share/lilypond/2.24.1/fonts/source/parmesan-rests.mf +428 -0
  875. data/share/lilypond/2.24.1/fonts/source/parmesan-scripts.mf +284 -0
  876. data/share/lilypond/2.24.1/fonts/source/parmesan-timesignatures.mf +402 -0
  877. data/share/lilypond/2.24.1/fonts/source/parmesan11.mf +6 -0
  878. data/share/lilypond/2.24.1/fonts/source/parmesan13.mf +6 -0
  879. data/share/lilypond/2.24.1/fonts/source/parmesan14.mf +6 -0
  880. data/share/lilypond/2.24.1/fonts/source/parmesan16.mf +6 -0
  881. data/share/lilypond/2.24.1/fonts/source/parmesan18.mf +6 -0
  882. data/share/lilypond/2.24.1/fonts/source/parmesan20.mf +6 -0
  883. data/share/lilypond/2.24.1/fonts/source/parmesan23.mf +6 -0
  884. data/share/lilypond/2.24.1/fonts/source/parmesan26.mf +6 -0
  885. data/share/lilypond/2.24.1/fonts/svg/emmentaler-11.svg +2525 -0
  886. data/share/lilypond/2.24.1/fonts/svg/emmentaler-11.woff +0 -0
  887. data/share/lilypond/2.24.1/fonts/svg/emmentaler-13.svg +2530 -0
  888. data/share/lilypond/2.24.1/fonts/svg/emmentaler-13.woff +0 -0
  889. data/share/lilypond/2.24.1/fonts/svg/emmentaler-14.svg +2526 -0
  890. data/share/lilypond/2.24.1/fonts/svg/emmentaler-14.woff +0 -0
  891. data/share/lilypond/2.24.1/fonts/svg/emmentaler-16.svg +2523 -0
  892. data/share/lilypond/2.24.1/fonts/svg/emmentaler-16.woff +0 -0
  893. data/share/lilypond/2.24.1/fonts/svg/emmentaler-18.svg +2519 -0
  894. data/share/lilypond/2.24.1/fonts/svg/emmentaler-18.woff +0 -0
  895. data/share/lilypond/2.24.1/fonts/svg/emmentaler-20.svg +2512 -0
  896. data/share/lilypond/2.24.1/fonts/svg/emmentaler-20.woff +0 -0
  897. data/share/lilypond/2.24.1/fonts/svg/emmentaler-23.svg +2506 -0
  898. data/share/lilypond/2.24.1/fonts/svg/emmentaler-23.woff +0 -0
  899. data/share/lilypond/2.24.1/fonts/svg/emmentaler-26.svg +2510 -0
  900. data/share/lilypond/2.24.1/fonts/svg/emmentaler-26.woff +0 -0
  901. data/share/lilypond/2.24.1/fonts/svg/emmentaler-brace.svg +1757 -0
  902. data/share/lilypond/2.24.1/fonts/svg/emmentaler-brace.woff +0 -0
  903. data/share/lilypond/2.24.1/ly/Welcome_to_LilyPond.ly +45 -0
  904. data/share/lilypond/2.24.1/ly/arabic.ly +185 -0
  905. data/share/lilypond/2.24.1/ly/articulate.ly +1013 -0
  906. data/share/lilypond/2.24.1/ly/bagpipe.ly +368 -0
  907. data/share/lilypond/2.24.1/ly/base-tkit.ly +135 -0
  908. data/share/lilypond/2.24.1/ly/catalan.ly +23 -0
  909. data/share/lilypond/2.24.1/ly/chord-modifiers-init.ly +63 -0
  910. data/share/lilypond/2.24.1/ly/chord-repetition-init.ly +60 -0
  911. data/share/lilypond/2.24.1/ly/context-mods-init.ly +119 -0
  912. data/share/lilypond/2.24.1/ly/declarations-init.ly +167 -0
  913. data/share/lilypond/2.24.1/ly/deutsch.ly +23 -0
  914. data/share/lilypond/2.24.1/ly/drumpitch-init.ly +366 -0
  915. data/share/lilypond/2.24.1/ly/dynamic-scripts-init.ly +54 -0
  916. data/share/lilypond/2.24.1/ly/english.ly +23 -0
  917. data/share/lilypond/2.24.1/ly/engraver-init.ly +1619 -0
  918. data/share/lilypond/2.24.1/ly/espanol.ly +23 -0
  919. data/share/lilypond/2.24.1/ly/event-listener.ly +241 -0
  920. data/share/lilypond/2.24.1/ly/festival.ly +38 -0
  921. data/share/lilypond/2.24.1/ly/generate-documentation.ly +7 -0
  922. data/share/lilypond/2.24.1/ly/grace-init.ly +56 -0
  923. data/share/lilypond/2.24.1/ly/graphviz-init.ly +174 -0
  924. data/share/lilypond/2.24.1/ly/gregorian.ly +268 -0
  925. data/share/lilypond/2.24.1/ly/guile-debugger.ly +55 -0
  926. data/share/lilypond/2.24.1/ly/hel-arabic.ly +307 -0
  927. data/share/lilypond/2.24.1/ly/init.ly +96 -0
  928. data/share/lilypond/2.24.1/ly/italiano.ly +23 -0
  929. data/share/lilypond/2.24.1/ly/lilypond-book-preamble.ly +47 -0
  930. data/share/lilypond/2.24.1/ly/lyrics-tkit.ly +68 -0
  931. data/share/lilypond/2.24.1/ly/makam.ly +166 -0
  932. data/share/lilypond/2.24.1/ly/midi-init.ly +59 -0
  933. data/share/lilypond/2.24.1/ly/music-functions-init.ly +2254 -0
  934. data/share/lilypond/2.24.1/ly/nederlands.ly +23 -0
  935. data/share/lilypond/2.24.1/ly/norsk.ly +23 -0
  936. data/share/lilypond/2.24.1/ly/paper-defaults-init.ly +188 -0
  937. data/share/lilypond/2.24.1/ly/performer-init.ly +398 -0
  938. data/share/lilypond/2.24.1/ly/persian.ly +335 -0
  939. data/share/lilypond/2.24.1/ly/piano-tkit.ly +61 -0
  940. data/share/lilypond/2.24.1/ly/portugues.ly +23 -0
  941. data/share/lilypond/2.24.1/ly/predefined-fretboards-init.ly +78 -0
  942. data/share/lilypond/2.24.1/ly/predefined-guitar-fretboards.ly +506 -0
  943. data/share/lilypond/2.24.1/ly/predefined-guitar-ninth-fretboards.ly +75 -0
  944. data/share/lilypond/2.24.1/ly/predefined-mandolin-fretboards.ly +876 -0
  945. data/share/lilypond/2.24.1/ly/predefined-ukulele-fretboards.ly +1285 -0
  946. data/share/lilypond/2.24.1/ly/property-init.ly +858 -0
  947. data/share/lilypond/2.24.1/ly/satb.ly +214 -0
  948. data/share/lilypond/2.24.1/ly/scale-definitions-init.ly +117 -0
  949. data/share/lilypond/2.24.1/ly/scheme-sandbox.ly +39 -0
  950. data/share/lilypond/2.24.1/ly/script-init.ly +94 -0
  951. data/share/lilypond/2.24.1/ly/spanners-init.ly +146 -0
  952. data/share/lilypond/2.24.1/ly/ssaattbb.ly +335 -0
  953. data/share/lilypond/2.24.1/ly/staff-tkit.ly +182 -0
  954. data/share/lilypond/2.24.1/ly/string-tunings-init.ly +94 -0
  955. data/share/lilypond/2.24.1/ly/suomi.ly +23 -0
  956. data/share/lilypond/2.24.1/ly/svenska.ly +23 -0
  957. data/share/lilypond/2.24.1/ly/swing.ly +362 -0
  958. data/share/lilypond/2.24.1/ly/text-replacements.ly +150 -0
  959. data/share/lilypond/2.24.1/ly/titling-init.ly +150 -0
  960. data/share/lilypond/2.24.1/ly/toc-init.ly +182 -0
  961. data/share/lilypond/2.24.1/ly/turkish-makam.ly +609 -0
  962. data/share/lilypond/2.24.1/ly/vlaams.ly +23 -0
  963. data/share/lilypond/2.24.1/ly/vocal-tkit.ly +103 -0
  964. data/share/lilypond/2.24.1/ly/voice-tkit.ly +34 -0
  965. data/share/lilypond/2.24.1/ps/encodingdefs.ps +2611 -0
  966. data/share/lilypond/2.24.1/ps/lilyponddefs.ps +49 -0
  967. data/share/lilypond/2.24.1/ps/music-drawing-routines.ps +329 -0
  968. data/share/lilypond/2.24.1/python/__pycache__/book_base.cpython-310.pyc +0 -0
  969. data/share/lilypond/2.24.1/python/__pycache__/book_docbook.cpython-310.pyc +0 -0
  970. data/share/lilypond/2.24.1/python/__pycache__/book_html.cpython-310.pyc +0 -0
  971. data/share/lilypond/2.24.1/python/__pycache__/book_latex.cpython-310.pyc +0 -0
  972. data/share/lilypond/2.24.1/python/__pycache__/book_snippets.cpython-310.pyc +0 -0
  973. data/share/lilypond/2.24.1/python/__pycache__/book_texinfo.cpython-310.pyc +0 -0
  974. data/share/lilypond/2.24.1/python/__pycache__/convertrules.cpython-310.pyc +0 -0
  975. data/share/lilypond/2.24.1/python/__pycache__/langdefs.cpython-310.pyc +0 -0
  976. data/share/lilypond/2.24.1/python/__pycache__/lilylib.cpython-310.pyc +0 -0
  977. data/share/lilypond/2.24.1/python/__pycache__/midi.cpython-310.pyc +0 -0
  978. data/share/lilypond/2.24.1/python/__pycache__/musicexp.cpython-310.pyc +0 -0
  979. data/share/lilypond/2.24.1/python/__pycache__/musicxml.cpython-310.pyc +0 -0
  980. data/share/lilypond/2.24.1/python/__pycache__/musicxml2ly_conversion.cpython-310.pyc +0 -0
  981. data/share/lilypond/2.24.1/python/__pycache__/utilities.cpython-310.pyc +0 -0
  982. data/share/lilypond/2.24.1/python/book_base.py +331 -0
  983. data/share/lilypond/2.24.1/python/book_docbook.py +154 -0
  984. data/share/lilypond/2.24.1/python/book_html.py +178 -0
  985. data/share/lilypond/2.24.1/python/book_latex.py +373 -0
  986. data/share/lilypond/2.24.1/python/book_snippets.py +1052 -0
  987. data/share/lilypond/2.24.1/python/book_texinfo.py +437 -0
  988. data/share/lilypond/2.24.1/python/convertrules.py +4764 -0
  989. data/share/lilypond/2.24.1/python/langdefs.py +131 -0
  990. data/share/lilypond/2.24.1/python/lilylib.py +141 -0
  991. data/share/lilypond/2.24.1/python/midi.py +212 -0
  992. data/share/lilypond/2.24.1/python/musicexp.py +2781 -0
  993. data/share/lilypond/2.24.1/python/musicxml.py +1905 -0
  994. data/share/lilypond/2.24.1/python/musicxml2ly_conversion.py +80 -0
  995. data/share/lilypond/2.24.1/python/utilities.py +280 -0
  996. data/share/lilypond/2.24.1/scm/lily/accreg.scm +579 -0
  997. data/share/lilypond/2.24.1/scm/lily/auto-beam.scm +163 -0
  998. data/share/lilypond/2.24.1/scm/lily/autochange.scm +100 -0
  999. data/share/lilypond/2.24.1/scm/lily/backend-library.scm +593 -0
  1000. data/share/lilypond/2.24.1/scm/lily/bar-line.scm +1281 -0
  1001. data/share/lilypond/2.24.1/scm/lily/breath.scm +74 -0
  1002. data/share/lilypond/2.24.1/scm/lily/c++.scm +174 -0
  1003. data/share/lilypond/2.24.1/scm/lily/chord-entry.scm +278 -0
  1004. data/share/lilypond/2.24.1/scm/lily/chord-ignatzek-names.scm +304 -0
  1005. data/share/lilypond/2.24.1/scm/lily/chord-name.scm +217 -0
  1006. data/share/lilypond/2.24.1/scm/lily/clip-region.scm +87 -0
  1007. data/share/lilypond/2.24.1/scm/lily/color.scm +757 -0
  1008. data/share/lilypond/2.24.1/scm/lily/curried-definitions.scm +68 -0
  1009. data/share/lilypond/2.24.1/scm/lily/define-context-properties.scm +939 -0
  1010. data/share/lilypond/2.24.1/scm/lily/define-event-classes.scm +142 -0
  1011. data/share/lilypond/2.24.1/scm/lily/define-grob-interfaces.scm +640 -0
  1012. data/share/lilypond/2.24.1/scm/lily/define-grob-properties.scm +1647 -0
  1013. data/share/lilypond/2.24.1/scm/lily/define-grobs.scm +4027 -0
  1014. data/share/lilypond/2.24.1/scm/lily/define-markup-commands.scm +5737 -0
  1015. data/share/lilypond/2.24.1/scm/lily/define-music-callbacks.scm +257 -0
  1016. data/share/lilypond/2.24.1/scm/lily/define-music-display-methods.scm +1350 -0
  1017. data/share/lilypond/2.24.1/scm/lily/define-music-properties.scm +242 -0
  1018. data/share/lilypond/2.24.1/scm/lily/define-music-types.scm +983 -0
  1019. data/share/lilypond/2.24.1/scm/lily/define-note-names.scm +1421 -0
  1020. data/share/lilypond/2.24.1/scm/lily/define-stencil-commands.scm +71 -0
  1021. data/share/lilypond/2.24.1/scm/lily/define-woodwind-diagrams.scm +1215 -0
  1022. data/share/lilypond/2.24.1/scm/lily/display-lily.scm +315 -0
  1023. data/share/lilypond/2.24.1/scm/lily/display-woodwind-diagrams.scm +1985 -0
  1024. data/share/lilypond/2.24.1/scm/lily/document-backend.scm +307 -0
  1025. data/share/lilypond/2.24.1/scm/lily/document-context-mods.scm +98 -0
  1026. data/share/lilypond/2.24.1/scm/lily/document-functions.scm +169 -0
  1027. data/share/lilypond/2.24.1/scm/lily/document-identifiers.scm +76 -0
  1028. data/share/lilypond/2.24.1/scm/lily/document-markup.scm +158 -0
  1029. data/share/lilypond/2.24.1/scm/lily/document-music.scm +146 -0
  1030. data/share/lilypond/2.24.1/scm/lily/document-outside-staff-priorities.scm +40 -0
  1031. data/share/lilypond/2.24.1/scm/lily/document-paper-sizes.scm +71 -0
  1032. data/share/lilypond/2.24.1/scm/lily/document-translation.scm +318 -0
  1033. data/share/lilypond/2.24.1/scm/lily/document-type-predicates.scm +85 -0
  1034. data/share/lilypond/2.24.1/scm/lily/documentation-generate.scm +259 -0
  1035. data/share/lilypond/2.24.1/scm/lily/documentation-lib.scm +207 -0
  1036. data/share/lilypond/2.24.1/scm/lily/file-cache.scm +28 -0
  1037. data/share/lilypond/2.24.1/scm/lily/flag-styles.scm +249 -0
  1038. data/share/lilypond/2.24.1/scm/lily/font-encodings.scm +1242 -0
  1039. data/share/lilypond/2.24.1/scm/lily/font.scm +303 -0
  1040. data/share/lilypond/2.24.1/scm/lily/framework-cairo.scm +26 -0
  1041. data/share/lilypond/2.24.1/scm/lily/framework-ps.scm +896 -0
  1042. data/share/lilypond/2.24.1/scm/lily/framework-svg.scm +172 -0
  1043. data/share/lilypond/2.24.1/scm/lily/fret-diagrams.scm +1261 -0
  1044. data/share/lilypond/2.24.1/scm/lily/graphviz.scm +78 -0
  1045. data/share/lilypond/2.24.1/scm/lily/guile-debugger.scm +90 -0
  1046. data/share/lilypond/2.24.1/scm/lily/harp-pedals.scm +172 -0
  1047. data/share/lilypond/2.24.1/scm/lily/hyphenate-internal-words.scm +51 -0
  1048. data/share/lilypond/2.24.1/scm/lily/layout-beam.scm +73 -0
  1049. data/share/lilypond/2.24.1/scm/lily/layout-slur.scm +45 -0
  1050. data/share/lilypond/2.24.1/scm/lily/lily-library.scm +1446 -0
  1051. data/share/lilypond/2.24.1/scm/lily/lily-sort.scm +116 -0
  1052. data/share/lilypond/2.24.1/scm/lily/lily.scm +929 -0
  1053. data/share/lilypond/2.24.1/scm/lily/ly-syntax-constructors.scm +374 -0
  1054. data/share/lilypond/2.24.1/scm/lily/markup-macros.scm +493 -0
  1055. data/share/lilypond/2.24.1/scm/lily/markup.scm +126 -0
  1056. data/share/lilypond/2.24.1/scm/lily/midi.scm +258 -0
  1057. data/share/lilypond/2.24.1/scm/lily/modal-transforms.scm +337 -0
  1058. data/share/lilypond/2.24.1/scm/lily/music-functions.scm +2878 -0
  1059. data/share/lilypond/2.24.1/scm/lily/output-lib.scm +3377 -0
  1060. data/share/lilypond/2.24.1/scm/lily/output-ps.scm +335 -0
  1061. data/share/lilypond/2.24.1/scm/lily/output-svg.scm +684 -0
  1062. data/share/lilypond/2.24.1/scm/lily/page.scm +321 -0
  1063. data/share/lilypond/2.24.1/scm/lily/paper-system.scm +271 -0
  1064. data/share/lilypond/2.24.1/scm/lily/paper.scm +376 -0
  1065. data/share/lilypond/2.24.1/scm/lily/parser-clef.scm +205 -0
  1066. data/share/lilypond/2.24.1/scm/lily/parser-ly-from-scheme.scm +170 -0
  1067. data/share/lilypond/2.24.1/scm/lily/part-combiner.scm +998 -0
  1068. data/share/lilypond/2.24.1/scm/lily/predefined-fretboards.scm +54 -0
  1069. data/share/lilypond/2.24.1/scm/lily/ps-to-png.scm +182 -0
  1070. data/share/lilypond/2.24.1/scm/lily/scheme-engravers.scm +1813 -0
  1071. data/share/lilypond/2.24.1/scm/lily/scheme-performers.scm +126 -0
  1072. data/share/lilypond/2.24.1/scm/lily/script.scm +416 -0
  1073. data/share/lilypond/2.24.1/scm/lily/skyline.scm +25 -0
  1074. data/share/lilypond/2.24.1/scm/lily/song-util.scm +191 -0
  1075. data/share/lilypond/2.24.1/scm/lily/song.scm +853 -0
  1076. data/share/lilypond/2.24.1/scm/lily/stencil.scm +998 -0
  1077. data/share/lilypond/2.24.1/scm/lily/tablature.scm +392 -0
  1078. data/share/lilypond/2.24.1/scm/lily/time-signature-settings.scm +473 -0
  1079. data/share/lilypond/2.24.1/scm/lily/time-signature.scm +35 -0
  1080. data/share/lilypond/2.24.1/scm/lily/titling.scm +99 -0
  1081. data/share/lilypond/2.24.1/scm/lily/to-xml.scm +254 -0
  1082. data/share/lilypond/2.24.1/scm/lily/translation-functions.scm +1169 -0
  1083. data/share/lilypond/2.24.1/vim/compiler/lilypond.vim +36 -0
  1084. data/share/lilypond/2.24.1/vim/ftdetect/lilypond.vim +4 -0
  1085. data/share/lilypond/2.24.1/vim/ftplugin/lilypond.vim +91 -0
  1086. data/share/lilypond/2.24.1/vim/indent/lilypond.vim +79 -0
  1087. data/share/lilypond/2.24.1/vim/syntax/lilypond-words +1408 -0
  1088. data/share/lilypond/2.24.1/vim/syntax/lilypond-words.vim +3 -0
  1089. data/share/lilypond/2.24.1/vim/syntax/lilypond.vim +104 -0
  1090. data/share/locale/ca/LC_MESSAGES/lilypond.mo +0 -0
  1091. data/share/locale/cs/LC_MESSAGES/lilypond.mo +0 -0
  1092. data/share/locale/da/LC_MESSAGES/lilypond.mo +0 -0
  1093. data/share/locale/de/LC_MESSAGES/lilypond.mo +0 -0
  1094. data/share/locale/el/LC_MESSAGES/lilypond.mo +0 -0
  1095. data/share/locale/eo/LC_MESSAGES/lilypond.mo +0 -0
  1096. data/share/locale/es/LC_MESSAGES/lilypond.mo +0 -0
  1097. data/share/locale/fi/LC_MESSAGES/lilypond.mo +0 -0
  1098. data/share/locale/fr/LC_MESSAGES/lilypond.mo +0 -0
  1099. data/share/locale/it/LC_MESSAGES/lilypond.mo +0 -0
  1100. data/share/locale/ja/LC_MESSAGES/lilypond.mo +0 -0
  1101. data/share/locale/nl/LC_MESSAGES/lilypond.mo +0 -0
  1102. data/share/locale/ru/LC_MESSAGES/lilypond.mo +0 -0
  1103. data/share/locale/sv/LC_MESSAGES/lilypond.mo +0 -0
  1104. data/share/locale/tr/LC_MESSAGES/lilypond.mo +0 -0
  1105. data/share/locale/uk/LC_MESSAGES/lilypond.mo +0 -0
  1106. data/share/locale/vi/LC_MESSAGES/lilypond.mo +0 -0
  1107. data/share/locale/zh_CN/LC_MESSAGES/lilypond.mo +0 -0
  1108. data/share/locale/zh_TW/LC_MESSAGES/lilypond.mo +0 -0
  1109. metadata +1108 -1
@@ -0,0 +1,1169 @@
1
+ ;;;; This file is part of LilyPond, the GNU music typesetter.
2
+ ;;;;
3
+ ;;;; Copyright (c) 1998--2022 Han-Wen Nienhuys <hanwen@xs4all.nl>,
4
+ ;;;; Jan Nieuwenhuizen <janneke@gnu.org>
5
+ ;;;;
6
+ ;;;; LilyPond is free software: you can redistribute it and/or modify
7
+ ;;;; it under the terms of the GNU General Public License as published by
8
+ ;;;; the Free Software Foundation, either version 3 of the License, or
9
+ ;;;; (at your option) any later version.
10
+ ;;;;
11
+ ;;;; LilyPond is distributed in the hope that it will be useful,
12
+ ;;;; but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ ;;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
+ ;;;; GNU General Public License for more details.
15
+ ;;;;
16
+ ;;;; You should have received a copy of the GNU General Public License
17
+ ;;;; along with LilyPond. If not, see <http://www.gnu.org/licenses/>.
18
+
19
+ (use-modules (srfi srfi-2)) ;; for `and-let*`
20
+
21
+
22
+ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
23
+ ;; caesura
24
+
25
+ (define-public ((at-bar-line-substitute-caesura-type substitute-type)
26
+ context caesura-type observations)
27
+ "At a bar line, create the caesura using @var{substitute-type} rather
28
+ than the value of @code{caesuraType}."
29
+ (if (memq 'bar-line observations)
30
+ (let ((arts (assq-ref caesura-type 'articulations)))
31
+ (acons 'articulations arts substitute-type))
32
+ caesura-type))
33
+
34
+ (define-public (caesura-to-divisio context caesura-type observations)
35
+ "@code{caesuraTypeTransform} callback to print articulated caesurae as
36
+ chant breath marks."
37
+ (let ((arts (assq-ref caesura-type 'articulations)))
38
+ (set! caesura-type
39
+ (cond
40
+ ((memq 'fermata arts)
41
+ `((articulations . ,(delq 'fermata arts))
42
+ (breath . chantfullbar)))
43
+ ((memq 'shortfermata arts)
44
+ `((articulations . ,(delq 'shortfermata arts))
45
+ (breath . chanthalfbar)))
46
+ (else
47
+ caesura-type))))
48
+ ;; TODO: This transformation is most likely to be used when
49
+ ;; forbidBreakBetweenBarLines is false, but to improve the other
50
+ ;; case, we could set (underlying-bar-line . "") here to allow a
51
+ ;; break at any caesura. This trick would not be suitable for
52
+ ;; contexts where an an underlying repeat bar might need to appear
53
+ ;; -- the caesura bar would take precedence -- but that shouldn't be
54
+ ;; a problem in the ancient contexts for which this was written.
55
+ caesura-type)
56
+
57
+ (define-public (caesura-to-bar-line-or-divisio
58
+ context caesura-type observations)
59
+ "@code{caesuraTypeTransform} callback to print articulated caesurae as
60
+ chant breath marks using the infrastructure for modern bar lines when
61
+ possible."
62
+ (set! caesura-type (caesura-to-divisio context caesura-type observations))
63
+ (let ((arts (assq-ref caesura-type 'articulations)))
64
+ (case (assq-ref caesura-type 'breath)
65
+ ((chantdoublebar)
66
+ `((articulations . ,arts)
67
+ (bar-line . "||")))
68
+ ((chantfullbar)
69
+ `((articulations . ,arts)
70
+ (bar-line . "|")))
71
+ ((chanthalfbar)
72
+ `((articulations . ,arts)
73
+ (bar-line . ",")))
74
+ ((chantquarterbar)
75
+ `((articulations . ,arts)
76
+ (bar-line . "'")))
77
+ (else caesura-type))))
78
+
79
+ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
80
+ ;; clefs
81
+
82
+ (define-public (clef-transposition-markup oct style)
83
+ "The transposition sign formatting function. @var{oct} is supposed to be
84
+ a string holding the transposition number, @var{style} determines the
85
+ way the transposition number is displayed."
86
+ (let* ((delim (if (symbol? style)
87
+ (case style
88
+ ((parenthesized) (cons "(" ")"))
89
+ ((bracketed) (cons "[" "]"))
90
+ (else (cons "" "")))
91
+ (cons "" "")))
92
+ (text (string-concatenate (list (car delim) oct (cdr delim)))))
93
+
94
+ (make-vcenter-markup text)))
95
+
96
+
97
+ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
98
+ ;; metronome marks
99
+
100
+ (define-public (format-metronome-markup event context)
101
+ (let ((hide-note (ly:context-property context 'tempoHideNote #f))
102
+ (text (ly:event-property event 'text))
103
+ (dur (ly:event-property event 'tempo-unit))
104
+ (count (ly:event-property event 'metronome-count)))
105
+ (metronome-markup text dur count hide-note)))
106
+
107
+ (define (metronome-markup text dur count hide-note)
108
+ (let* ((note-mark
109
+ (if (and (not hide-note) (ly:duration? dur))
110
+ (make-smaller-markup
111
+ (make-note-by-number-markup
112
+ (ly:duration-log dur)
113
+ (ly:duration-dot-count dur)
114
+ UP))
115
+ #f))
116
+ (count-markup (cond ((number? count)
117
+ (if (> count 0)
118
+ (make-simple-markup
119
+ (number->string count))
120
+ #f))
121
+ ((pair? count)
122
+ ;; Thin Spaces U+2009 & En-dash U+2013
123
+ (make-simple-markup
124
+ (format #f "~a – ~a" (car count) (cdr count))))
125
+ (else #f)))
126
+ (note-markup (if (and (not hide-note) count-markup)
127
+ (list
128
+ (make-general-align-markup Y DOWN note-mark)
129
+ (make-simple-markup " = ")
130
+ count-markup)
131
+ #f))
132
+ (text-markup (if (not (null? text)) (make-bold-markup text) #f)))
133
+ (if text-markup
134
+ (if (and note-markup (not hide-note))
135
+ (make-line-markup (list (make-concat-markup
136
+ (append (list text-markup
137
+ (make-simple-markup " ("))
138
+ note-markup
139
+ (list (make-simple-markup ")"))))))
140
+ (make-line-markup (list text-markup)))
141
+ (if note-markup
142
+ (make-line-markup (list (make-concat-markup note-markup)))
143
+ (make-null-markup)))))
144
+
145
+ (define (select-option options available)
146
+ (let ((o (find (lambda (x) (memq x available))
147
+ options)))
148
+ (if o o (car available))))
149
+
150
+ (define-public (format-dal-segno-text
151
+ context
152
+ return-count
153
+ marks)
154
+ (let* ((start-markup (car marks))
155
+ (end-markup (cadr marks))
156
+ (next-markup (caddr marks))
157
+ (result (if start-markup "D.S." "D.C.")))
158
+ (if start-markup
159
+ (set! result (make-line-markup (list result start-markup))))
160
+ (if (= 1 return-count)
161
+ ;; The "al (mark)" detail would probably do more harm than
162
+ ;; good when there are multiple returns, since it matters the
163
+ ;; last time only.
164
+ (if (and next-markup end-markup) ; "... al (mark) e poi ..."
165
+ (set! result (make-line-markup (list result "al" end-markup))))
166
+ (set! result (make-line-markup
167
+ (list result (number->string return-count) "V."))))
168
+ (if next-markup ; "... e poi ..."
169
+ (set! result (make-right-column-markup
170
+ (list
171
+ result
172
+ (make-line-markup (list "e poi la" next-markup)))))
173
+ (if end-markup ; like "... al Fine"
174
+ (set! result (make-right-column-markup
175
+ (list
176
+ result
177
+ (make-line-markup (list "al" end-markup)))))))
178
+ result))
179
+
180
+ (define-public (format-dal-segno-text-brief
181
+ context
182
+ return-count
183
+ marks)
184
+ (let* ((start-markup (car marks))
185
+ (end-markup (cadr marks))
186
+ (next-markup (caddr marks))
187
+ (result (if start-markup "D.S." "D.C.")))
188
+ (if start-markup
189
+ (set! result (make-line-markup (list result start-markup))))
190
+ (if (!= 1 return-count)
191
+ (set! result (make-line-markup
192
+ (list result (number->string return-count) "V."))))
193
+ (if next-markup ; like "al Coda"
194
+ (set! result (make-right-column-markup
195
+ (list
196
+ result
197
+ (make-line-markup (list "al" next-markup)))))
198
+ (if end-markup ; like "al Fine"
199
+ (set! result (make-right-column-markup
200
+ (list
201
+ result
202
+ (make-line-markup (list "al" end-markup)))))))
203
+ result))
204
+
205
+ (define-public (make-lyric-repeat-count-formatter options)
206
+ ;; Appending 'medium to the options defeats the default 'bold of
207
+ ;; format-mark-generic while still allowing the user to request
208
+ ;; bold.
209
+ (let ((mark-formatter (format-mark-generic (append options '(medium)))))
210
+ (lambda (context repeat-count)
211
+ (if (positive? repeat-count)
212
+ (mark-formatter repeat-count context)))))
213
+
214
+ (define-public (format-mark-generic options)
215
+ ;; Select "alphabet", frame, font-series, letter-case and double letter behaviour
216
+ ;; from options list; if none is given, default to first available.
217
+ (let ((ab (select-option options '(alphabet-omit-i alphabet alphabet-omit-j barnumbers numbers roman roman-ij)))
218
+ (fr (select-option options '(noframe box circle oval)))
219
+ (fs (select-option options '(bold medium)))
220
+ (lc (select-option options '(uppercase lowercase mixedcase)))
221
+ (dl (select-option options '(combine repeat)))
222
+ (dot (select-option options '(nodot dot)))
223
+ (sign (select-option options '(nosign coda segno varcoda))))
224
+ (lambda (number context)
225
+ (let* ((the-string
226
+ (case ab
227
+ ((barnumbers) (number->string (ly:context-property context 'currentBarNumber)))
228
+ ((numbers) (number->string number))
229
+ ((roman) (number-format 'roman-upper number))
230
+ ((roman-ij) (number-format 'roman-ij-upper number))
231
+ (else (markgeneric-string number ab dl))))
232
+ (the-cased-string
233
+ (case lc
234
+ ;; both roman numbers and alphabet-based marks are
235
+ ;; already uppercase, (bar)numbers aren't affected
236
+ ((uppercase) the-string)
237
+ ((mixedcase) (string-capitalize the-string))
238
+ ((lowercase) (string-downcase the-string))))
239
+ (the-dotted-string
240
+ (case dot
241
+ ((dot) (string-append the-cased-string "."))
242
+ (else the-cased-string)))
243
+ (the-flanked-string
244
+ (case sign
245
+ ((coda) (format-sign-with-number
246
+ number (make-coda-markup) the-dotted-string))
247
+ ((segno) (format-sign-with-number
248
+ number (make-segno-markup) the-dotted-string))
249
+ ((varcoda) (format-sign-with-number
250
+ number (make-varcoda-markup) the-dotted-string))
251
+ (else the-dotted-string)))
252
+ (the-framed-string
253
+ (case fr
254
+ ((box) (make-box-markup the-flanked-string))
255
+ ((circle) (make-circle-markup the-flanked-string))
256
+ ((oval) (make-oval-markup the-flanked-string))
257
+ ((noframe) the-flanked-string))))
258
+ (case fs
259
+ ((bold) (make-bold-markup the-framed-string))
260
+ ((medium) the-framed-string))))))
261
+
262
+ (define-public format-coda-mark
263
+ (format-mark-generic '(numbers coda)))
264
+
265
+ (define-public format-mark-alphabet
266
+ (format-mark-generic '(alphabet)))
267
+
268
+ (define-public format-mark-box-alphabet
269
+ (format-mark-generic '(alphabet box)))
270
+
271
+ (define-public format-mark-circle-alphabet
272
+ (format-mark-generic '(alphabet circle)))
273
+
274
+ (define-public format-mark-letters
275
+ (format-mark-generic '()))
276
+
277
+ (define-public format-mark-numbers
278
+ (format-mark-generic '(numbers)))
279
+
280
+ (define-public format-mark-barnumbers
281
+ (format-mark-generic '(barnumbers)))
282
+
283
+ (define-public format-mark-box-letters
284
+ (format-mark-generic '(box)))
285
+
286
+ (define-public format-mark-circle-letters
287
+ (format-mark-generic '(circle)))
288
+
289
+ (define-public format-mark-box-numbers
290
+ (format-mark-generic '(numbers box)))
291
+
292
+ (define-public format-mark-circle-numbers
293
+ (format-mark-generic '(numbers circle)))
294
+
295
+ (define-public format-mark-box-barnumbers
296
+ (format-mark-generic '(barnumbers box)))
297
+
298
+ (define-public format-mark-circle-barnumbers
299
+ (format-mark-generic '(barnumbers circle)))
300
+
301
+ (define-public format-segno-mark
302
+ (format-mark-generic '(numbers segno)))
303
+
304
+ (define-public (format-segno-mark-considering-bar-lines segno-number context)
305
+ "When bar lines incorporate segni, print no mark for the first segno
306
+ because that would be redundant. Print the usual marks for later
307
+ segni to avoid ambiguity."
308
+ (if (and
309
+ (<= segno-number 1)
310
+ (eq? (ly:context-property context 'segnoStyle) 'bar-line))
311
+ empty-markup
312
+ (format-segno-mark segno-number context)))
313
+
314
+ (define (format-sign-with-number number sign-markup number-markup)
315
+ (make-concat-markup
316
+ (if (<= number 2)
317
+ (make-list number sign-markup)
318
+ (list sign-markup
319
+ (ly:wide-char->utf-8 #x200a) ;; Unicode hair space
320
+ number-markup
321
+ (ly:wide-char->utf-8 #x200a)
322
+ sign-markup))))
323
+
324
+ (define-public format-varcoda-mark
325
+ (format-mark-generic '(numbers varcoda)))
326
+
327
+ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
328
+ ;; Bass figures.
329
+
330
+ (define figbass-accidental-alist
331
+ '((-1 . #x1d12b)
332
+ (-1/2 . #x266d)
333
+ (0 . #x266e)
334
+ (1/2 . #x266f)
335
+ (1 . #x1d12a)))
336
+
337
+ (define-public (format-bass-figure figure event context)
338
+ (let* (;; User properties controlling the figured bass layout.
339
+ (large-number-alignment
340
+ (ly:context-property context 'figuredBassLargeNumberAlignment))
341
+ (figbass-alist
342
+ (ly:context-property context 'figuredBassPlusStrokedAlist))
343
+ (alt-dir
344
+ (ly:context-property context 'figuredBassAlterationDirection))
345
+ (plus-dir
346
+ (ly:context-property context 'figuredBassPlusDirection))
347
+
348
+ (augmented (ly:event-property event 'augmented))
349
+
350
+ ;; The digit(s), horizontally positioned, or #f.
351
+ (fig-markup
352
+ (if (number? figure)
353
+ ((if (<= 10 figure)
354
+ (lambda (y)
355
+ (make-align-on-other-markup
356
+ X
357
+ large-number-alignment (make-number-markup "1")
358
+ large-number-alignment y))
359
+ identity)
360
+ (cond
361
+ ((eq? #t (ly:event-property event 'diminished))
362
+ (make-slashed-digit-markup figure))
363
+ ((eq? #t (ly:event-property event 'augmented-slash))
364
+ ;; Use specially stroked digit if available and wanted.
365
+ (or (and-let* (((<= 6 figure 9))
366
+ (glyph (assv-ref figbass-alist figure)))
367
+ (make-musicglyph-markup glyph))
368
+ (make-backslashed-digit-markup figure)))
369
+ ((eq? #t augmented)
370
+ ;; Use special digit with plus if available and wanted.
371
+ (or (and-let* (((>= 5 figure 2))
372
+ ((eqv? plus-dir RIGHT))
373
+ (glyph (assv-ref figbass-alist figure)))
374
+ (set! augmented #f)
375
+ (make-musicglyph-markup glyph))
376
+ (make-number-markup (number->string figure 10))))
377
+ (else (make-number-markup (number->string figure 10)))))
378
+ #f))
379
+
380
+ (alt (ly:event-property event 'alteration))
381
+ (alt-bracket (ly:event-property event 'alteration-bracket #f))
382
+ ;; The alteration, probably bracketed but not positioned yet,
383
+ ;; or #f.
384
+ (alt-markup
385
+ (if (number? alt)
386
+ ((if alt-bracket make-bracket-markup identity)
387
+ (make-number-markup
388
+ (ly:wide-char->utf-8
389
+ (or
390
+ (assv-ref figbass-accidental-alist alt)
391
+ (begin
392
+ (ly:warning
393
+ (G_ "no accidental glyph found for alteration ~a")
394
+ alteration)
395
+ #\?)))))
396
+ #f))
397
+
398
+ (plus-markup (if (eq? #t augmented)
399
+ (make-number-markup "+")
400
+ #f)))
401
+
402
+ (if (and (not alt-markup) alt-bracket)
403
+ (ly:programming-error
404
+ "Cannot put brackets around non-existent bass figure alteration."))
405
+
406
+ ;; We treat a solitary alteration similarly to digits.
407
+ (if (and (not fig-markup) alt-markup)
408
+ (begin
409
+ (set! fig-markup
410
+ (make-align-on-other-markup
411
+ X
412
+ CENTER (make-number-markup "1")
413
+ CENTER alt-markup))
414
+ (set! alt-markup #f)))
415
+
416
+ ;; We treat a solitary plus similarly to digits (but enlarged).
417
+ (if (and (not fig-markup) plus-markup)
418
+ (begin
419
+ (set! fig-markup
420
+ (make-align-on-other-markup
421
+ Y
422
+ CENTER (make-number-markup "1")
423
+ CENTER (make-align-on-other-markup
424
+ X
425
+ CENTER (make-number-markup "1")
426
+ CENTER (make-fontsize-markup 3 plus-markup))))
427
+ (set! plus-markup #f)))
428
+
429
+ ;; The alteration gets attached either to the left or the right of
430
+ ;; the digit(s).
431
+ (if alt-markup
432
+ (set! fig-markup
433
+ (make-put-adjacent-markup
434
+ X (if (number? alt-dir)
435
+ alt-dir
436
+ LEFT)
437
+ fig-markup
438
+ (make-pad-x-markup 0.1 alt-markup))))
439
+
440
+ ;; Ditto for the plus mark.
441
+ (if plus-markup
442
+ (set! fig-markup
443
+ (if fig-markup
444
+ (make-put-adjacent-markup
445
+ X (if (number? plus-dir)
446
+ plus-dir
447
+ LEFT)
448
+ fig-markup plus-markup)
449
+ plus-markup)))
450
+
451
+ (if (markup? fig-markup)
452
+ (make-fontsize-markup -5 fig-markup)
453
+ (make-null-markup))))
454
+
455
+ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
456
+ ;; fret diagrams
457
+
458
+ (define (create-fretboard context grob placement-list)
459
+ "Convert @var{placement-list} into a fretboard @var{grob}."
460
+
461
+ (let* ((tunings (ly:context-property context 'stringTunings))
462
+ (my-string-count (length tunings))
463
+ (details (ly:grob-property grob 'fret-diagram-details)))
464
+
465
+ ;; Add string-count from string-tunings to fret-diagram-details.
466
+ (set! (ly:grob-property grob 'fret-diagram-details)
467
+ (acons 'string-count my-string-count details))
468
+ ;; Create the dot-placement list for the grob
469
+ (set! (ly:grob-property grob 'dot-placement-list) placement-list)))
470
+
471
+ (define-public
472
+ (determine-string-fret-finger context notes specified-info rest)
473
+ "Determine string numbers and frets for playing @var{notes}
474
+ as a chord, given specified information @var{specified-info}.
475
+ @var{specified-info} is a list with two list elements,
476
+ specified strings @code{defined-strings} and
477
+ specified fingerings @code{defined-fingers}. Only a fingering of@tie{}0
478
+ will affect the fret selection, as it specifies an open string.
479
+ If @code{defined-strings} is @code{'()}, the context property
480
+ @code{defaultStrings} is used as a list of defined strings.
481
+ Looks for predefined fretboards if @code{predefinedFretboardTable}
482
+ is not @code{#f}. If @var{rest} is present, it contains the
483
+ @code{FretBoard} grob, and a fretboard gets
484
+ created. Otherwise, a list of @code{(string fret finger)} lists
485
+ is returned.
486
+
487
+ If the context-property @code{supportNonIntegerFret} is set @code{#t},
488
+ micro-tones are supported for @code{TabStaff}, but not not for
489
+ @code{FretBoards}."
490
+
491
+ ;; helper functions
492
+ (define (barre-list string-frets)
493
+ "Create a barre-list that reflects the string, fret, and finger
494
+ entries in @var{string-frets}."
495
+ (let* ((finger-range '(0 4)) ; range of possible finger numbers
496
+ (barre-elements 4) ; 4 elements per barre entry:
497
+ ; 'barre
498
+ ; highest string number
499
+ ; lowest string number
500
+ ; finger (seems redundant, but makes it
501
+ ; easy to convert from array to list
502
+ (barres (make-array 0 finger-range barre-elements))
503
+ (add-string-fret
504
+ (lambda(sf)
505
+ (let ((string (car sf))
506
+ (fret (cadr sf))
507
+ (finger (if (null? (caddr sf)) 0 (caddr sf))))
508
+ (if (and (not (= fret 0)) (not (= finger 0)))
509
+ (begin
510
+ (array-set! barres 'barre finger 0)
511
+ (array-set! barres fret finger 3)
512
+ (if (or (< (array-ref barres finger 1) string)
513
+ (= 0 (array-ref barres finger 1)))
514
+ (array-set! barres string finger 1))
515
+ (if (or (> (array-ref barres finger 2) string)
516
+ (= 0 (array-ref barres finger 2)))
517
+ (array-set! barres string finger 2)))))))
518
+ (barre-list (begin
519
+ (map add-string-fret string-frets)
520
+ (array->list barres))))
521
+ (filter (lambda(l) (and (eq? (car l) 'barre)
522
+ (not (= (fourth l) 0))
523
+ (> (second l) (third l))))
524
+ barre-list)))
525
+
526
+
527
+ (define (string-frets->placement-list string-frets string-count)
528
+ "Convert @var{string-frets} to @code{fret-diagram-verbose}
529
+ dot placement entries."
530
+ (let* ((placements (list->vector
531
+ (map (lambda (x) (list 'mute x))
532
+ (iota string-count 1))))
533
+ (no-fingers (null? (filter (lambda (sf)
534
+ (not (null? (caddr sf))))
535
+ string-frets)))
536
+ (b-list (barre-list string-frets)))
537
+ (for-each (lambda (sf)
538
+ (let* ((string (car sf))
539
+ (fret (cadr sf))
540
+ (finger (caddr sf)))
541
+ (vector-set!
542
+ placements
543
+ (1- string)
544
+ (if (= 0 fret)
545
+ (list 'open string)
546
+ (if (null? finger)
547
+ (list 'place-fret string fret)
548
+ (list 'place-fret string fret finger))))))
549
+ string-frets)
550
+ (if (or (null? b-list) no-fingers)
551
+ (vector->list placements)
552
+ (append (vector->list placements) b-list))))
553
+
554
+ (define (placement-list->string-frets placement-list)
555
+ "Convert @var{placement-list} to string-fret list."
556
+ (map (lambda (x) (if (eq? (car x) 'place-fret)
557
+ (cdr x)
558
+ (list (cadr x) 0)))
559
+ (filter (lambda (l) (or (eq? (car l) 'place-fret)
560
+ (eq? (car l) 'open)))
561
+ placement-list)))
562
+
563
+ (define (entry-count art-list)
564
+ "Count the number of entries in a list of articulations."
565
+ (length (filter (lambda (x) (not (null? x)))
566
+ art-list)))
567
+
568
+ (define (string-number event)
569
+ "Get the string-number from @var{event}. Return @var{#f}
570
+ if no string-number is present."
571
+ (let ((num (ly:event-property event 'string-number)))
572
+ (and (integer? num) (positive? num) num)))
573
+
574
+ (define (determine-frets-and-strings
575
+ notes
576
+ defined-strings
577
+ defined-fingers
578
+ minimum-fret
579
+ maximum-stretch
580
+ tuning)
581
+ "Determine the frets and strings used to play the notes in
582
+ @var{notes}, given @var{defined-strings} and @var{defined-fingers}
583
+ along with @var{minimum-fret}, @var{maximum-stretch}, and
584
+ @var{tuning}. Returns a list of @code{(string fret finger) lists."
585
+
586
+
587
+ (define restrain-open-strings (ly:context-property context
588
+ 'restrainOpenStrings
589
+ #f))
590
+ (define specified-frets '())
591
+ (define free-strings (iota (length tuning) 1))
592
+
593
+ (define (calc-fret pitch string tuning)
594
+ "Calculate the fret to play @var{pitch} on @var{string} with
595
+ @var{tuning}."
596
+ (* 2 (- (ly:pitch-tones pitch) (ly:pitch-tones (list-ref tuning (1- string))))))
597
+
598
+ (define (note-pitch note)
599
+ "Get the pitch (in semitones) from @var{note}."
600
+ (ly:event-property note 'pitch))
601
+
602
+ (define (note-finger ev)
603
+ "Get the fingering from @var{ev}. Return @var{#f}
604
+ if no fingering is present."
605
+ (let* ((articulations (ly:event-property ev 'articulations))
606
+ (finger-found #f))
607
+ (for-each (lambda (art)
608
+ (let* ((num (ly:event-property art 'digit)))
609
+
610
+ (if (and (ly:in-event-class? art 'fingering-event)
611
+ (number? num)
612
+ (> num 0))
613
+ (set! finger-found num))))
614
+ articulations)
615
+ finger-found))
616
+
617
+ (define (delete-free-string string)
618
+ (if (number? string)
619
+ (set! free-strings
620
+ (delete string free-strings))))
621
+
622
+ (define (close-enough fret)
623
+ "Decide if @var{fret} is acceptable, given the already used frets."
624
+ (every (lambda (specced-fret)
625
+ (or (zero? specced-fret)
626
+ (zero? fret)
627
+ (>= maximum-stretch (abs (- fret specced-fret)))))
628
+ specified-frets))
629
+
630
+ (define (string-qualifies string pitch)
631
+ "Can @var{pitch} be played on @var{string}, given already placed
632
+ notes?"
633
+ (let* ((fret (calc-fret pitch string tuning)))
634
+ (and (or (and (not restrain-open-strings)
635
+ (zero? fret))
636
+ (>= fret minimum-fret))
637
+ (if (and
638
+ (ly:context-property context 'supportNonIntegerFret #f)
639
+ (null? rest))
640
+ (integer? (truncate fret))
641
+ (integer? fret))
642
+ (close-enough fret))))
643
+
644
+ (define (open-string string pitch)
645
+ "Is @var{pitch} and open-string note on @var{string}, given
646
+ the current tuning?"
647
+ (let* ((fret (calc-fret pitch string tuning)))
648
+ (zero? fret)))
649
+
650
+ (define (set-fret! pitch-entry string finger)
651
+ (let ((this-fret (calc-fret (car pitch-entry)
652
+ string
653
+ tuning)))
654
+ (if (< this-fret 0)
655
+ (ly:warning (G_ "Negative fret for pitch ~a on string ~a")
656
+ (car pitch-entry) string)
657
+ (if (and
658
+ (not (integer? this-fret))
659
+ (not (ly:context-property context 'supportNonIntegerFret #f)))
660
+ (ly:warning (G_ "Missing fret for pitch ~a on string ~a")
661
+ (car pitch-entry) string)))
662
+ (if (and (= this-fret 0)
663
+ (and finger
664
+ (not (null? finger))))
665
+ (ly:warning (G_ "Open fret on string ~a has finger of ~a")
666
+ string finger))
667
+ (delete-free-string string)
668
+ (set! specified-frets (cons this-fret specified-frets))
669
+ (list-set! string-fret-fingers
670
+ (cdr pitch-entry)
671
+ (list string this-fret finger))))
672
+
673
+ (define (kill-note! string-fret-fingers note-index)
674
+ (list-set! string-fret-fingers note-index (list #f #t)))
675
+
676
+ (define string-fret-fingers
677
+ (map (lambda (string finger)
678
+ (if (null? finger)
679
+ (list string #f)
680
+ (list string #f finger)))
681
+ defined-strings defined-fingers))
682
+
683
+ ;;; body of determine-frets-and-strings
684
+ (let* ((pitches (map note-pitch notes))
685
+ (pitch-alist (map cons pitches (iota (length pitches)))))
686
+
687
+ ;; handle notes with strings assigned and fingering of 0
688
+ (for-each
689
+ (lambda (pitch-entry string-fret-finger)
690
+ (let* ((string (list-ref string-fret-finger 0))
691
+ (finger (if (= (length string-fret-finger) 3)
692
+ (list-ref string-fret-finger 2)
693
+ '()))
694
+ (pitch (car pitch-entry))
695
+ (digit (if (null? finger)
696
+ #f
697
+ finger)))
698
+ (if (or (not (null? string))
699
+ (eqv? digit 0))
700
+ (if (eqv? digit 0)
701
+ ;; here we handle fingers of 0 -- open strings
702
+ (let ((fit-string
703
+ (find (lambda (string)
704
+ (open-string string pitch))
705
+ free-strings)))
706
+ (if fit-string
707
+ (set-fret! pitch-entry fit-string #f)
708
+ (ly:warning (G_ "No open string for pitch ~a")
709
+ pitch)))
710
+ ;; here we handle assigned strings
711
+ (let* ((this-fret
712
+ (calc-fret pitch string tuning))
713
+ (possible-fret?
714
+ (and (>= this-fret 0)
715
+ (if (and
716
+ (ly:context-property
717
+ context 'supportNonIntegerFret #f)
718
+ (null? rest))
719
+ (integer? (truncate this-fret))
720
+ (integer? this-fret))))
721
+ (handle-negative
722
+ (ly:context-property context
723
+ 'handleNegativeFrets
724
+ 'recalculate)))
725
+ (cond ((or possible-fret?
726
+ (eq? handle-negative 'include))
727
+ (set-fret! pitch-entry string finger))
728
+ ((eq? handle-negative 'recalculate)
729
+ (begin
730
+ (ly:warning
731
+ (G_ "Requested string for pitch requires negative fret: string ~a pitch ~a")
732
+ string
733
+ pitch)
734
+ (ly:warning (G_ "Ignoring string request and recalculating."))
735
+ (list-set! string-fret-fingers
736
+ (cdr pitch-entry)
737
+ (if (null? finger)
738
+ (list '() #f)
739
+ (list '() #f finger)))))
740
+ ((eq? handle-negative 'ignore)
741
+ (begin
742
+ (ly:warning
743
+ (G_ "Requested string for pitch requires negative fret: string ~a pitch ~a")
744
+ string
745
+ pitch)
746
+ (ly:warning (G_ "Ignoring note in tablature."))
747
+ (kill-note! string-fret-fingers
748
+ (cdr pitch-entry))))))))))
749
+ pitch-alist string-fret-fingers)
750
+ ;; handle notes without strings assigned -- sorted by pitch, so
751
+ ;; we need to use the alist to have the note number available
752
+ (for-each
753
+ (lambda (pitch-entry)
754
+ (let* ((string-fret-finger (list-ref string-fret-fingers
755
+ (cdr pitch-entry)))
756
+ (string (list-ref string-fret-finger 0))
757
+ (finger (if (= (length string-fret-finger) 3)
758
+ (list-ref string-fret-finger 2)
759
+ '()))
760
+ (pitch (car pitch-entry))
761
+ (fit-string
762
+ (find (lambda (string)
763
+ (string-qualifies string pitch))
764
+ free-strings)))
765
+ (if (not (list-ref string-fret-finger 1))
766
+ (if fit-string
767
+ (set-fret! pitch-entry fit-string finger)
768
+ (begin
769
+ (ly:event-warning
770
+ (list-ref notes (cdr pitch-entry))
771
+ (G_ "No string for pitch ~a (given frets ~a)")
772
+ pitch
773
+ specified-frets)
774
+ (kill-note! string-fret-fingers
775
+ (cdr pitch-entry)))))))
776
+ (sort pitch-alist (lambda (pitch-entry-a pitch-entry-b)
777
+ (ly:pitch<? (car pitch-entry-b)
778
+ (car pitch-entry-a)))))
779
+ string-fret-fingers)) ;; end of determine-frets-and-strings
780
+
781
+ (define (get-predefined-fretboard predefined-fret-table tuning pitches)
782
+ "Search through @var{predefined-fret-table} looking for a predefined
783
+ fretboard with a key of @var{(tuning . pitches)}. The search will check
784
+ both up and down an octave in order to accomodate transposition of the
785
+ chords. Returns a placement-list."
786
+
787
+ (define (get-fretboard key)
788
+ (let ((hash-handle
789
+ (hash-get-handle predefined-fret-table key)))
790
+ (if hash-handle
791
+ (cdr hash-handle) ; return table entry
792
+ '())))
793
+
794
+ ;; body of get-predefined-fretboard
795
+ (let ((test-fretboard (get-fretboard (cons tuning pitches))))
796
+ (if (not (null? test-fretboard))
797
+ test-fretboard
798
+ (let ((test-fretboard
799
+ (get-fretboard
800
+ (cons tuning (map (lambda (x) (shift-octave x 1)) pitches)))))
801
+ (if (not (null? test-fretboard))
802
+ test-fretboard
803
+ (get-fretboard
804
+ (cons tuning (map (lambda (x) (shift-octave x -1))
805
+ pitches))))))))
806
+
807
+ ;; TODO: Does it make sense to have additional bass strings in a fret-diagram?
808
+ (if (and (not (null? rest))
809
+ (not (null? (ly:context-property context 'additionalBassStrings))))
810
+ (ly:warning (G_ "additional bass strings are not supported by FretBoards")))
811
+
812
+ ;; body of determine-frets
813
+ (let* ((predefined-fret-table
814
+ (ly:context-property context 'predefinedDiagramTable))
815
+ (tunings
816
+ (append
817
+ (ly:context-property context 'stringTunings)
818
+ (ly:context-property context 'additionalBassStrings '())))
819
+ (string-count (length tunings))
820
+ (grob (if (null? rest) '() (car rest)))
821
+ (pitches (map (lambda (x) (ly:event-property x 'pitch)) notes))
822
+ (defined-strings (map (lambda (x)
823
+ (if (null? x)
824
+ x
825
+ (or (string-number x) '())))
826
+ (car specified-info)))
827
+ (defined-fingers (map (lambda (x)
828
+ (if (null? x)
829
+ x
830
+ (ly:event-property x 'digit)))
831
+ (cadr specified-info)))
832
+ (default-strings (ly:context-property context 'defaultStrings '()))
833
+ (strings-used (if (and (zero? (entry-count defined-strings))
834
+ (not (zero? (entry-count default-strings))))
835
+ default-strings
836
+ defined-strings))
837
+ (predefined-fretboard
838
+ (if predefined-fret-table
839
+ (get-predefined-fretboard
840
+ predefined-fret-table
841
+ tunings
842
+ pitches)
843
+ '())))
844
+ (if (null? predefined-fretboard)
845
+ (let ((string-frets
846
+ (determine-frets-and-strings
847
+ notes
848
+ strings-used
849
+ defined-fingers
850
+ (ly:context-property context 'minimumFret 0)
851
+ (ly:context-property context 'maximumFretStretch 4)
852
+ tunings)))
853
+ (if (null? grob)
854
+ string-frets
855
+ (create-fretboard
856
+ context grob (string-frets->placement-list
857
+ (filter (lambda (entry)
858
+ (car entry))
859
+ string-frets)
860
+ string-count))))
861
+ (if (null? grob)
862
+ (placement-list->string-frets predefined-fretboard)
863
+ (create-fretboard context grob predefined-fretboard)))))
864
+
865
+ (define-public
866
+ (determine-frets context notes specified-info . rest)
867
+ (let ((string-fret-finger-list
868
+ (determine-string-fret-finger context notes specified-info rest)))
869
+ (if (list? string-fret-finger-list)
870
+ (ly:context-set-property!
871
+ context 'stringFretFingerList string-fret-finger-list))
872
+ string-fret-finger-list))
873
+
874
+ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
875
+ ;; tablature
876
+
877
+ ;; The TabNoteHead tablatureFormat callbacks.
878
+
879
+ ;; Calculate the fret from pitch and string number as letter
880
+ ;; The fret letter is taken from 'fretLabels if present
881
+ (define-public (fret-letter-tablature-format
882
+ context string-number fret-number)
883
+ (let* ((labels (ly:context-property context 'fretLabels))
884
+ (string-tunings (ly:context-property context 'stringTunings))
885
+ (string-count (length string-tunings))
886
+ (letter
887
+ (cond
888
+ ((= 0 (length labels))
889
+ (string (integer->char (+ fret-number (char->integer #\a)))))
890
+ ((and (<= 0 fret-number) (< fret-number (length labels)))
891
+ (list-ref labels fret-number))
892
+ (else
893
+ (ly:warning
894
+ (G_ "No label for fret ~a (on string ~a);
895
+ only ~a fret labels provided")
896
+ fret-number string-number (length labels))
897
+ ".")))
898
+ (add-bass-string-nr ;; starting at zero
899
+ (- string-number string-count 1)))
900
+ (make-translate-scaled-markup '(0 . -0.5)
901
+ ;; For additional bass strings, we add zero up to three "/"-signs before
902
+ ;; the letter, even more bass strings will get numbers, starting with "4".
903
+ ;; In the rare case such a string isn't played open, we put out, eg."4b"
904
+ (make-concat-markup
905
+ (if (> string-number (+ string-count 4))
906
+ (list (number->string add-bass-string-nr)
907
+ (if (zero? fret-number) "" letter))
908
+ (list (make-string (max 0 add-bass-string-nr) #\/)
909
+ letter))))))
910
+
911
+ ;; Display the fret number as a number
912
+ (define-public (fret-number-tablature-format
913
+ context string-number fret-number)
914
+ (if (integer? fret-number)
915
+ (make-vcenter-markup
916
+ (format #f "~a" fret-number))
917
+ ;; for non-integer fret-number print p.e. "2½"
918
+ (let* ((whole-part (truncate fret-number))
919
+ (remaining (- fret-number whole-part))
920
+ (fret
921
+ (if (and (zero? whole-part) (not (zero? remaining)))
922
+ ""
923
+ (format #f "~a" whole-part)))
924
+ (frac
925
+ (if (zero? remaining)
926
+ ""
927
+ (format #f "~a" remaining))))
928
+ (make-concat-markup
929
+ (list (make-vcenter-markup fret)
930
+ (make-vcenter-markup
931
+ ;; the value `-2.5' is my choice
932
+ (make-fontsize-markup -2.5 frac)))))))
933
+
934
+ ;; The 5-string banjo has got an extra string, the fifth (duh), which
935
+ ;; starts at the fifth fret on the neck. Frets on the fifth string
936
+ ;; are referred to relative to the other frets:
937
+ ;; the "first fret" on the fifth string is really the sixth fret
938
+ ;; on the banjo neck.
939
+ ;; We solve this by defining a new fret-number-tablature function:
940
+ (define-public (fret-number-tablature-format-banjo
941
+ context string-number fret-number)
942
+ (make-vcenter-markup
943
+ (number->string (cond
944
+ ((and (> fret-number 0) (= string-number 5))
945
+ (+ fret-number 5))
946
+ (else fret-number)))))
947
+
948
+ ;; Tab note head staff position functions
949
+ ;;
950
+ ;; Define where in the staff to display a given string. Some forms of
951
+ ;; tablature put the tab note heads in the spaces, rather than on the
952
+ ;; lines
953
+
954
+ (define-public (tablature-position-on-lines context string-number)
955
+ (let* ((string-tunings (ly:context-property context 'stringTunings))
956
+ (string-count (length string-tunings))
957
+ (string-nr
958
+ (if (> string-number (length string-tunings))
959
+ (1+ (length string-tunings))
960
+ string-number))
961
+ (string-one-topmost (ly:context-property context 'stringOneTopmost))
962
+ (staff-line (- (* 2 string-nr) string-count 1)))
963
+ (if string-one-topmost
964
+ (- staff-line)
965
+ staff-line)))
966
+
967
+ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
968
+ ;; bar numbers
969
+
970
+ (define-public ((every-nth-bar-number-visible n) barnum mp)
971
+ (= 0 (modulo barnum n)))
972
+
973
+ (define-public ((modulo-bar-number-visible n m) barnum mp)
974
+ (and (> barnum 1) (= m (modulo barnum n))))
975
+
976
+ (define-public ((set-bar-number-visibility n) tr)
977
+ (let ((bn (ly:context-property tr 'currentBarNumber)))
978
+ (ly:context-set-property! tr 'barNumberVisibility
979
+ (modulo-bar-number-visible n (modulo bn n)))))
980
+
981
+ (define-public (first-bar-number-invisible barnum mp)
982
+ (> barnum 1))
983
+
984
+ (define-public (first-bar-number-invisible-save-broken-bars barnum mp)
985
+ (or (> barnum 1)
986
+ (> (ly:moment-main-numerator mp) 0)))
987
+
988
+ (define-public (first-bar-number-invisible-and-no-parenthesized-bar-numbers barnum mp)
989
+ (and (> barnum 1)
990
+ (= (ly:moment-main-numerator mp) 0)))
991
+
992
+ (define-public (robust-bar-number-function barnum measure-pos alt-number context)
993
+ (define (get-number-and-power an pow)
994
+ (if (<= an alt-number)
995
+ (get-number-and-power (+ an (expt 26 (1+ pow))) (1+ pow))
996
+ (cons (+ alt-number (- (expt 26 pow) an)) (1- pow))))
997
+ (define (make-letter so-far an pow)
998
+ (if (< pow 0)
999
+ so-far
1000
+ (let ((pos (modulo (quotient an (expt 26 pow)) 26)))
1001
+ (make-letter (string-append so-far
1002
+ (substring "abcdefghijklmnopqrstuvwxyz"
1003
+ pos
1004
+ (1+ pos)))
1005
+ an
1006
+ (1- pow)))))
1007
+ (let* ((number-and-power (get-number-and-power 0 0))
1008
+ (begin-measure (= 0 (ly:moment-main-numerator measure-pos)))
1009
+ (maybe-open-parenthesis (if begin-measure "" "("))
1010
+ (maybe-close-parenthesis (if begin-measure "" ")")))
1011
+ (string-append maybe-open-parenthesis
1012
+ (number->string barnum)
1013
+ (make-letter ""
1014
+ (car number-and-power)
1015
+ (cdr number-and-power))
1016
+ maybe-close-parenthesis)))
1017
+
1018
+ (define-public (all-bar-numbers-visible barnum mp) #t)
1019
+
1020
+
1021
+ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1022
+ ;; percent repeat counters
1023
+
1024
+ (define-public ((every-nth-repeat-count-visible n) count context)
1025
+ (= 0 (modulo count n)))
1026
+
1027
+ (define-public (all-repeat-counts-visible count context) #t)
1028
+
1029
+ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1030
+ ;; pitch recognition
1031
+
1032
+ (define-public (make-semitone->pitch pitches)
1033
+ "Convert @var{pitches}, an unordered list of note values
1034
+ covering (after disregarding octaves) all absolute pitches in need of
1035
+ conversion, into a function converting semitone numbers (absolute
1036
+ pitch missing enharmonic information) back into note values.
1037
+
1038
+ For a key signature without accidentals
1039
+
1040
+ @example
1041
+ c cis d es e f fis g gis a bes b
1042
+ @end example
1043
+
1044
+ might be a good choice, covering Bb@tie{}major to A@tie{}major and their
1045
+ parallel keys, and melodic/@/harmonic C@tie{}minor to A@tie{}minor."
1046
+ ;; TODO: short-circuit lcm calculation once we know it will be large
1047
+ (let* ((size (apply lcm (map (lambda (pitch)
1048
+ (denominator (/ (ly:pitch-tones pitch) 6)))
1049
+ pitches)))
1050
+ ;; Normal tunings need 12 steps per octave, quartertone
1051
+ ;; tunings 24, Makam needs 108. But microtunings might cause
1052
+ ;; trouble.
1053
+ (lookup (if (> size 400)
1054
+ (make-hash-table)
1055
+ (make-vector size #f))))
1056
+ (for-each
1057
+ (lambda (pitch)
1058
+ (let* ((rawoct (/ (ly:pitch-tones pitch) 6))
1059
+ (oct (floor rawoct))
1060
+ (ref (- rawoct oct))
1061
+ (val (ly:pitch-transpose pitch
1062
+ (ly:make-pitch (- oct) 0))))
1063
+ (if (hash-table? lookup)
1064
+ (hashv-set! lookup ref val)
1065
+ (vector-set! lookup (* size ref) val))))
1066
+ pitches)
1067
+ (lambda (semitone)
1068
+ "Convert @var{semitone} numbers into note values. If the
1069
+ originally specified list of pitches does not contain a note
1070
+ corresponding to @var{semitone} (disregarding octaves), @code{#f} is
1071
+ returned."
1072
+ (let* ((rawoct (/ semitone 12))
1073
+ (oct (floor rawoct))
1074
+ (ref (- rawoct oct))
1075
+ (val (if (hash-table? lookup)
1076
+ (hashv-ref lookup ref)
1077
+ (let ((ref (* (vector-length lookup) ref)))
1078
+ (and (integer? ref)
1079
+ (vector-ref lookup ref))))))
1080
+ (and val
1081
+ (ly:pitch-transpose val (ly:make-pitch oct 0)))))))
1082
+
1083
+ (define-public ((shift-semitone->pitch key semitone->pitch) semitone)
1084
+ "Given a function @var{semitone->pitch} converting a semitone number
1085
+ into a note value for a lookup table created in relation to@tie{}C,
1086
+ returns a corresponding function in relation to @var{key}. The note
1087
+ values returned by this function differ only enharmonically from the
1088
+ original @var{semitone->pitch} function."
1089
+ (ly:pitch-transpose (semitone->pitch (- semitone (* 2 (ly:pitch-tones key))))
1090
+ key))
1091
+
1092
+
1093
+
1094
+ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1095
+ ;; NoteNames
1096
+
1097
+ (define-public (note-name-markup pitch context)
1098
+ (let* ((markuplist '())
1099
+ (oct-style (ly:context-property context 'printOctaveNames))
1100
+ (acc-style (ly:context-property context 'printAccidentalNames))
1101
+ (lang (ly:context-property context 'printNotesLanguage))
1102
+ (lily-str (symbol->string (note-name->lily-string pitch)))
1103
+ (basic-str (if (not (null? lang))
1104
+ (note-name->string pitch (string->symbol lang))
1105
+ (note-name->string pitch))))
1106
+ (set! markuplist
1107
+ (append markuplist
1108
+ (if acc-style
1109
+ (if (eq? acc-style 'lily)
1110
+ (list lily-str)
1111
+ (list basic-str
1112
+ (accidental->markup (ly:pitch-alteration pitch))))
1113
+ (list basic-str))))
1114
+ (if oct-style
1115
+ (set! markuplist
1116
+ (append markuplist
1117
+ (list
1118
+ (if (eq? oct-style 'scientific)
1119
+ (make-sub-markup
1120
+ (number->string
1121
+ (+ 4 (ly:pitch-octave pitch))))
1122
+ (octave->lily-string pitch))))))
1123
+ (make-concat-markup markuplist)))
1124
+
1125
+ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1126
+ ;; markups for OttavaBrackets
1127
+
1128
+ (define-public ottavation-numbers
1129
+ '((4 . "29")
1130
+ (3 . "22")
1131
+ (2 . "15")
1132
+ (1 . "8")
1133
+ (-1 . "8")
1134
+ (-2 . "15")
1135
+ (-3 . "22")
1136
+ (-4 . "29")))
1137
+
1138
+ (define-public ottavation-ordinals
1139
+ `((4 . ,(make-concat-markup
1140
+ (list (make-general-align-markup Y UP "29")
1141
+ (make-general-align-markup Y UP (make-tiny-markup "ma")))))
1142
+ (3 . ,(make-concat-markup
1143
+ (list (make-general-align-markup Y UP "22")
1144
+ (make-general-align-markup Y UP (make-tiny-markup "ma")))))
1145
+ (2 . ,(make-concat-markup
1146
+ (list (make-general-align-markup Y UP "15")
1147
+ (make-general-align-markup Y UP (make-tiny-markup "ma")))))
1148
+ (1 . ,(make-concat-markup
1149
+ (list (make-general-align-markup Y UP "8")
1150
+ (make-general-align-markup Y UP (make-tiny-markup "va")))))
1151
+ (-1 . ,(make-concat-markup
1152
+ (list "8" (make-tiny-markup "va"))))
1153
+ (-2 . ,(make-concat-markup
1154
+ (list "15" (make-tiny-markup "ma"))))
1155
+ (-3 . ,(make-concat-markup
1156
+ (list "22" (make-tiny-markup "ma"))))
1157
+ (-4 . ,(make-concat-markup
1158
+ (list "29" (make-tiny-markup "ma"))))))
1159
+
1160
+ ;; former default
1161
+ (define-public ottavation-simple-ordinals
1162
+ '((4 . "29ma")
1163
+ (3 . "22ma")
1164
+ (2 . "15ma")
1165
+ (1 . "8va")
1166
+ (-1 . "8vb")
1167
+ (-2 . "15mb")
1168
+ (-3 . "22mb")
1169
+ (-4 . "29mb")))