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,1215 @@
1
+ ;;;; This file is part of LilyPond, the GNU music typesetter.
2
+ ;;;;
3
+ ;;;; Copyright (C) 2010--2022 Mike Solomon <mikesol@stanfordalumni.org>
4
+ ;;;; Clarinet drawings copied from diagrams created by
5
+ ;;;; Gilles Thibault <gilles.thibault@free.fr>
6
+ ;;;;
7
+ ;;;; LilyPond is free software: you can redistribute it and/or modify
8
+ ;;;; it under the terms of the GNU General Public License as published by
9
+ ;;;; the Free Software Foundation, either version 3 of the License, or
10
+ ;;;; (at your option) any later version.
11
+ ;;;;
12
+ ;;;; LilyPond is distributed in the hope that it will be useful,
13
+ ;;;; but WITHOUT ANY WARRANTY; without even the implied warranty of
14
+ ;;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
+ ;;;; GNU General Public License for more details.
16
+ ;;;;
17
+ ;;;; You should have received a copy of the GNU General Public License
18
+ ;;;; along with LilyPond. If not, see <http://www.gnu.org/licenses/>.
19
+
20
+ (define HOLE-FILL-LIST '((R . 3) (1q . 5) (1h . 7) (3q . 11) (F . 13)))
21
+
22
+ ;; Utility functions
23
+
24
+ (define-public (symbol-concatenate . names)
25
+ "Like @code{string-concatenate}, but for symbols."
26
+ (string->symbol (string-concatenate (map symbol->string names))))
27
+
28
+ (define-public (function-chain arg function-list)
29
+ "Apply a list of functions in @var{function-list} to @var{arg}.
30
+ Each element of @var{function-list} is structured @code{(cons function
31
+ '(arg2 arg3 ...))}. If function takes arguments besides @var{arg}, they
32
+ are provided in @var{function-list}. Example:
33
+
34
+ @example
35
+ (function-chain 1 `((,+ 1) (,- 2) (,+ 3) (,/)))
36
+ @result{} 1/3
37
+ @end example"
38
+ (fold
39
+ (lambda (fun arg) (apply (car fun) arg (cdr fun)))
40
+ arg
41
+ function-list))
42
+
43
+ (define (assoc-keys alist)
44
+ "Gets the keys of an alist."
45
+ (map car alist))
46
+
47
+ (define (assoc-values alist)
48
+ "Gets the values of an alist."
49
+ (map cdr alist))
50
+
51
+ (define (get-slope-offset p1 p2)
52
+ "Gets the slope and offset for p1 and p2.
53
+ For example:
54
+ @code{(get-slope-offset '(1 . 2) '(3 . -5.1))}
55
+ @code{(-3.55 . 5.55)}"
56
+ (let*
57
+ ((slope (/ (- (cdr p1) (cdr p2)) (- (car p1) (car p2))))
58
+ (offset (- (cdr p1) (* slope (car p1)))))
59
+ `(,slope . ,offset)))
60
+
61
+ (define (is-square? x input-list)
62
+ "Returns true if x is the square of a value in input-list."
63
+ (pair? (memv (inexact->exact (sqrt x)) input-list)))
64
+
65
+ (define (true-entry? input-list)
66
+ "Is there a true entry in @code{input-list}?"
67
+ (any identity input-list))
68
+
69
+ (define (entry-greater-than-x? input-list x)
70
+ "Is there an entry greater than @code{x} in @code{input-list}?"
71
+ (member x input-list <))
72
+
73
+ (define (n-true-entries input-list)
74
+ "Returns number of true entries in @code{input-list}."
75
+ (count identity input-list))
76
+
77
+ (define (bezier-head-for-stencil bezier cut-point)
78
+ "Prepares a split-bezier to be used in a connected path stencil."
79
+ (list-tail (flatten-list (ly:bezier-extract bezier 0 cut-point)) 2))
80
+
81
+ ;; Translators for keys
82
+
83
+ ;; Translates a "normal" key (open, closed, trill)
84
+ (define (key-fill-translate fill)
85
+ (cond
86
+ ((= fill 1) #f)
87
+ ((= fill 2) #f)
88
+ ((= fill (expt (assoc-get 'F HOLE-FILL-LIST) 2)) 0.5)
89
+ ((= fill (assoc-get 'F HOLE-FILL-LIST)) #t)))
90
+
91
+ ;; Similar to above, but trans vs opaque doesn't matter
92
+ (define (text-fill-translate fill)
93
+ (cond
94
+ ((< fill 3) 1.0)
95
+ ((= fill (expt (assoc-get 'F HOLE-FILL-LIST) 2)) 0.5)
96
+ ((= fill (assoc-get 'F HOLE-FILL-LIST)) 0.0)))
97
+
98
+ ;; Emits a list for the central-column-hole maker
99
+ ;; (not-full?, 1-quarter-full?, 1-half-full?, 3-quarters-full?, full?)
100
+ ;; Multiple values, such as (#t #f #f #t #f), mean a trill between
101
+ ;; not-full and 3-quarters-full
102
+ (define (process-fill-value fill)
103
+ (let* ((avals (list-tail (assoc-values HOLE-FILL-LIST) 1)))
104
+ (append `(,(or (< fill 3) (is-square? fill avals)))
105
+ (map (lambda (x) (= 0 (remainder fill x))) avals))))
106
+
107
+ ;; Color a stencil gray
108
+ (define (gray-colorize stencil)
109
+ (apply ly:stencil-in-color stencil (x11-color 'grey)))
110
+
111
+ ;; A connected path stencil that is surrounded by proc
112
+ (define (rich-path-stencil ls x-stretch y-stretch proc)
113
+ (lambda (radius thick fill layout props)
114
+ (let*
115
+ ((fill-translate (key-fill-translate fill))
116
+ (gray? (eqv? fill-translate 0.5)))
117
+ (ly:stencil-add
118
+ ((if gray? gray-colorize identity)
119
+ (proc
120
+ (make-connected-path-stencil
121
+ ls
122
+ thick
123
+ (* x-stretch radius)
124
+ (* y-stretch radius)
125
+ #f
126
+ (if gray? #t fill-translate))))
127
+ (if (not gray?)
128
+ empty-stencil
129
+ ((rich-path-stencil ls x-stretch y-stretch proc)
130
+ radius
131
+ thick
132
+ 1
133
+ layout
134
+ props))))))
135
+
136
+ ;; A connected path stencil without a surrounding proc
137
+ (define (standard-path-stencil ls x-stretch y-stretch)
138
+ (rich-path-stencil ls x-stretch y-stretch identity))
139
+
140
+ ;; An ellipse stencil that is surrounded by a proc
141
+ (define (rich-pe-stencil x-stretch y-stretch start end proc)
142
+ (lambda (radius thick fill layout props)
143
+ (let*
144
+ ((fill-translate (key-fill-translate fill))
145
+ (gray? (eqv? fill-translate 0.5)))
146
+ (ly:stencil-add
147
+ ((if gray? gray-colorize identity)
148
+ (proc
149
+ (make-partial-ellipse-stencil
150
+ (* x-stretch radius)
151
+ (* y-stretch radius)
152
+ start
153
+ end
154
+ thick
155
+ #t
156
+ (if gray? #t fill-translate))))
157
+ (if (not gray?)
158
+ empty-stencil
159
+ ((rich-pe-stencil x-stretch y-stretch start end proc)
160
+ radius
161
+ thick
162
+ 1
163
+ layout
164
+ props))))))
165
+
166
+ (define (rich-e-stencil x-stretch y-stretch proc)
167
+ (lambda (radius thick fill layout props)
168
+ (let*
169
+ ((fill-translate (key-fill-translate fill))
170
+ (gray? (eqv? fill-translate 0.5)))
171
+ (ly:stencil-add
172
+ ((if gray? gray-colorize identity)
173
+ (proc
174
+ (make-ellipse-stencil
175
+ (* x-stretch radius)
176
+ (* y-stretch radius)
177
+ thick
178
+ (if gray? #t fill-translate))))
179
+ (if (not gray?)
180
+ empty-stencil
181
+ ((rich-e-stencil x-stretch y-stretch proc)
182
+ radius
183
+ thick
184
+ 1
185
+ layout
186
+ props))))))
187
+
188
+ ;; An ellipse stencil without a surrounding proc
189
+ (define (standard-e-stencil x-stretch y-stretch)
190
+ (rich-e-stencil x-stretch y-stretch identity))
191
+
192
+ ;; Translates all possible representations of symbol.
193
+ ;; If simple? then the only representations are open, closed, and trill.
194
+ ;; Otherwise, there can be various levels of "closure" on the holes
195
+ ;; ring? allows for a ring around the holes as well
196
+ (define (make-symbol-alist symbol simple? ring?)
197
+ (delete `(,(symbol-concatenate symbol 'T 'F) .
198
+ ,(expt (assoc-get 'F HOLE-FILL-LIST) 2))
199
+ `((,symbol . ,(assoc-get 'F HOLE-FILL-LIST))
200
+ (,(symbol-concatenate symbol 'T) .
201
+ ,(expt (assoc-get 'F HOLE-FILL-LIST) 2))
202
+ ,@(if simple?
203
+ '()
204
+ (append-map
205
+ (lambda (x)
206
+ `((,(symbol-concatenate symbol (car x) 'T)
207
+ . ,(expt (cdr x) 2))
208
+ (,(symbol-concatenate symbol 'T (car x))
209
+ . ,(* (cdr x) (assoc-get 'F HOLE-FILL-LIST)))
210
+ (,(symbol-concatenate symbol (car x))
211
+ . ,(cdr x))
212
+ ,@(append-map
213
+ (lambda (y)
214
+ (map (lambda (a b)
215
+ `(,(symbol-concatenate symbol
216
+ (car a)
217
+ 'T
218
+ (car b))
219
+ . ,(* (cdr a) (cdr b))))
220
+ `(,x ,y) `(,y ,x)))
221
+ (cdr (member x HOLE-FILL-LIST)))))
222
+ (if ring? HOLE-FILL-LIST (cdr HOLE-FILL-LIST)))))))
223
+
224
+ ;;; Commands for text layout
225
+
226
+ ;; Distinguish a markup if (= trigger 0.5) - either with a circle or in grey
227
+ (define-markup-command
228
+ (conditional-trill-markup layout props trigger in-markup)
229
+ (number? markup?)
230
+ (let* ((wwd-details (chain-assoc-get 'woodwind-diagram-details props '()))
231
+ (text-trill-circled (assoc-get 'text-trill-circled wwd-details #t)))
232
+ (interpret-markup layout props
233
+ (if (eqv? trigger 0.5)
234
+ (if text-trill-circled
235
+ (make-circle-markup in-markup)
236
+ (make-with-color-markup grey in-markup))
237
+ in-markup))))
238
+
239
+ ;; Makes a list of named-keys
240
+ (define (make-name-keylist input-list key-list font-size)
241
+ (map (lambda (x y)
242
+ (if (< x 1)
243
+ (make-conditional-trill-markup-markup
244
+ x
245
+ (make-concat-markup
246
+ (list
247
+ (make-abs-fontsize-markup font-size (car y))
248
+ (if (and (< x 1) (cdr y))
249
+ (make-abs-fontsize-markup
250
+ font-size
251
+ (make-raise-markup
252
+ (/ font-size 12)
253
+ (make-fontsize-markup
254
+ -2
255
+ (if (eqv? (cdr y) 1)
256
+ (make-sharp-markup)
257
+ (make-flat-markup)))))
258
+ (make-null-markup)))))
259
+ (make-null-markup)))
260
+ input-list key-list))
261
+
262
+ ;; Makes a list of number-keys
263
+ (define (make-number-keylist input-list key-list font-size)
264
+ (map (lambda (x y)
265
+ (if (< x 1)
266
+ (make-conditional-trill-markup-markup
267
+ x
268
+ (make-abs-fontsize-markup font-size (make-number-markup y)))
269
+ (make-null-markup)))
270
+ input-list
271
+ key-list))
272
+
273
+ ;; Creates a named-key list with a certain alignment
274
+ (define (aligned-text-stencil-function dir hv)
275
+ (lambda (key-name-list radius fill-list layout props)
276
+ (interpret-markup
277
+ layout
278
+ props
279
+ (make-general-align-markup
280
+ X
281
+ dir
282
+ ((if hv make-concat-markup make-center-column-markup)
283
+ (make-name-keylist
284
+ (map text-fill-translate fill-list)
285
+ key-name-list
286
+ (* 12 radius
287
+ (magstep
288
+ (chain-assoc-get 'font-size props 0)))))))))
289
+
290
+ (define number-column-stencil
291
+ (lambda (key-name-list radius fill-list layout props)
292
+ (interpret-markup
293
+ layout
294
+ props
295
+ (make-general-align-markup
296
+ Y
297
+ CENTER
298
+ (make-general-align-markup
299
+ X
300
+ RIGHT
301
+ (make-override-markup
302
+ '(baseline-skip . 0)
303
+ (make-column-markup
304
+ (make-number-keylist
305
+ (map text-fill-translate fill-list)
306
+ key-name-list
307
+ (* radius 8
308
+ (magstep
309
+ (chain-assoc-get 'font-size props 0)))))))))))
310
+
311
+ ;; Utility function for the left-hand keys
312
+ (define lh-woodwind-text-stencil
313
+ (aligned-text-stencil-function LEFT #t))
314
+
315
+ ;; Utility function for the right-hand keys
316
+ (define rh-woodwind-text-stencil
317
+ (aligned-text-stencil-function RIGHT #t))
318
+
319
+ (define octave-woodwind-text-stencil
320
+ (aligned-text-stencil-function CENTER #f))
321
+
322
+ ;;; Draw rules
323
+
324
+ (define (rich-group-draw-rule alist target-part change-part)
325
+ (if
326
+ (entry-greater-than-x?
327
+ (map (lambda (key) (assoc-get key alist)) target-part) 3)
328
+ (map-selected-alist-keys (lambda (x) (if (= x 0) 1 x)) change-part alist)
329
+ alist))
330
+
331
+ (define (bassoon-midline-rule alist target-part)
332
+ (if
333
+ (entry-greater-than-x?
334
+ (map (lambda (key) (assoc-get key alist)) target-part) 0)
335
+ (map-selected-alist-keys (lambda (x) 1) '((hidden . long-midline)) alist)
336
+ (map-selected-alist-keys (lambda (x) 1) '((hidden . midline)) alist)))
337
+
338
+ (define (group-draw-rule alist target-part)
339
+ (rich-group-draw-rule alist target-part target-part))
340
+
341
+ (define (group-automate-rule alist change-part)
342
+ (map-selected-alist-keys (lambda (x) (if (= x 0) 1 x)) change-part alist))
343
+
344
+ (define (apply-group-draw-rule-series alist target-part-list)
345
+ (if (null? target-part-list)
346
+ alist
347
+ (apply-group-draw-rule-series
348
+ (group-draw-rule alist (car target-part-list))
349
+ (cdr target-part-list))))
350
+
351
+ ;; Extra-offset rules
352
+
353
+ (define (rich-group-extra-offset-rule alist target-part change-part eos)
354
+ (if
355
+ (entry-greater-than-x?
356
+ (map (lambda (key) (assoc-get key alist)) target-part) 0)
357
+ (map-selected-alist-keys (lambda (x) eos) change-part alist)
358
+ alist))
359
+
360
+ (define (group-extra-offset-rule alist target-part eos)
361
+ (rich-group-extra-offset-rule alist target-part target-part eos))
362
+
363
+ (define (uniform-extra-offset-rule alist eos)
364
+ (map-selected-alist-keys
365
+ (lambda (x) (if (pair? x) x eos))
366
+ (assoc-keys alist)
367
+ alist))
368
+
369
+ ;;; General drawing commands
370
+
371
+ ;; Used all the time for a dividing line
372
+ (define (midline-stencil radius thick fill layout props)
373
+ (make-line-stencil (* thick 2) (* -0.80 radius) 0 (* 0.80 radius) 0))
374
+
375
+ (define (long-midline-stencil radius thick fill layout props)
376
+ (make-line-stencil (* thick 2) (* -5.75 radius) 0 (* 0.75 radius) 0))
377
+
378
+ ;; Used all the time for a small, between-hole key
379
+ (define little-elliptical-key-stencil (standard-e-stencil 0.75 0.2))
380
+
381
+ ;; Used for several upper keys in the clarinet and sax
382
+ (define (upper-key-stencil tailw tailh bodyw bodyh)
383
+ (let*
384
+ ((xmove (lambda (x) (+ tailw (+ 0.2 (* bodyw (- x 0.2))))))
385
+ (ymove (lambda (x) (+ (- tailh) (+ -0.05 (* bodyh (+ x 0.05)))))))
386
+ (standard-path-stencil
387
+ `((,(xmove 0.7)
388
+ ,(ymove -0.2)
389
+ ,(xmove 1.0)
390
+ ,(ymove -1.0)
391
+ ,(xmove 0.5)
392
+ ,(ymove -1.0))
393
+ (,(xmove 0.2)
394
+ ,(ymove -1.0)
395
+ ,(xmove 0.2)
396
+ ,(ymove -0.2)
397
+ ,(xmove 0.3)
398
+ ,(ymove -0.1))
399
+ (,(+ 0.2 tailw)
400
+ ,(- -0.05 tailh)
401
+ ,(+ 0.1 (/ tailw 2))
402
+ ,(- -0.025 (/ tailh 2))
403
+ 0.0
404
+ 0.0))
405
+ 1.0
406
+ 1.0)))
407
+
408
+ ;; Utility function for the column-hole maker.
409
+ ;; Returns the left and right degrees for the drawing of a given
410
+ ;; fill level (1-quarter, 1-half, etc...)
411
+ (define (degree-first-true fill-list left? reverse?)
412
+ (define (dfl-crawler fill-list os-list left?)
413
+ (if (car fill-list)
414
+ ((if left? car cdr) (car os-list))
415
+ (dfl-crawler (cdr fill-list) (cdr os-list) left?)))
416
+ (dfl-crawler
417
+ ((if reverse? reverse identity) fill-list)
418
+ ((if reverse? reverse identity)
419
+ '((0 . 0) (215 . 325) (180 . 0) (145 . 35) (90 . 90)))
420
+ left?))
421
+
422
+ ;; Gets the position of the first (or last if reverse?) element of a list.
423
+ (define (position-true-endpoint in-list reverse?)
424
+ (define (pte-crawler in-list n)
425
+ (if (car in-list)
426
+ n
427
+ (pte-crawler (cdr in-list) (+ n 1))))
428
+ ((if reverse? - +)
429
+ (if reverse? (length in-list) 0)
430
+ (pte-crawler ((if reverse? reverse identity) in-list) 0)))
431
+
432
+ ;; Huge, kind-of-ugly maker of a circle in a column.
433
+ ;; I think this is the clearest way to write it, though...
434
+
435
+ (define (column-circle-stencil radius thick fill layout props)
436
+ (let* ((fill-list (process-fill-value fill))
437
+ (wwd-details (chain-assoc-get 'woodwind-diagram-details props '()))
438
+ (fill-angle (assoc-get 'fill-angle wwd-details 0)))
439
+ (cond
440
+ ((and
441
+ (list-ref fill-list 0)
442
+ (not (true-entry? (list-tail fill-list 1)))) ; is it empty?
443
+ ((standard-e-stencil 1.0 1.0) radius thick fill layout props))
444
+ ((and
445
+ (list-ref fill-list 4)
446
+ (not (true-entry? (list-head fill-list 4)))) ; is it full?
447
+ ((standard-e-stencil 1.0 1.0) radius thick fill layout props))
448
+ ((and
449
+ (list-ref fill-list 0)
450
+ (list-ref fill-list 4)) ; is it a trill between empty and full?
451
+ ((standard-e-stencil 1.0 1.0) radius thick fill layout props))
452
+ (else ;If none of these, it is partially full.
453
+ (ly:stencil-add
454
+ ((rich-pe-stencil 1.0 1.0 0 360 identity)
455
+ radius
456
+ thick
457
+ (if (list-ref fill-list 4)
458
+ (expt (assoc-get 'F HOLE-FILL-LIST) 2)
459
+ 1)
460
+ layout
461
+ props)
462
+ ((rich-pe-stencil
463
+ 1.0
464
+ 1.0
465
+ (+ fill-angle (degree-first-true fill-list #t #t))
466
+ (+ fill-angle (degree-first-true fill-list #f #t))
467
+ identity)
468
+ radius
469
+ thick
470
+ (if
471
+ (= 2 (n-true-entries fill-list)) ; trill between empty and partially full
472
+ (expt (assoc-get 'F HOLE-FILL-LIST) 2)
473
+ (assoc-get 'F HOLE-FILL-LIST))
474
+ layout
475
+ props)
476
+ (if
477
+ (= 2 (n-true-entries (list-tail fill-list 1))) ; trill between two partially full states
478
+ ((rich-pe-stencil
479
+ 1.0
480
+ 1.0
481
+ (+ fill-angle (degree-first-true fill-list #t #f))
482
+ (+ fill-angle (degree-first-true fill-list #f #f))
483
+ identity)
484
+ radius
485
+ thick
486
+ (assoc-get 'F HOLE-FILL-LIST)
487
+ layout
488
+ props)
489
+ empty-stencil))))))
490
+
491
+ (define (variable-column-circle-stencil scaler)
492
+ (lambda (radius thick fill layout props)
493
+ (column-circle-stencil (* radius scaler) thick fill layout props)))
494
+
495
+ ;; A stencil for ring-column circles that combines two of the above
496
+ (define (ring-column-circle-stencil radius thick fill layout props)
497
+ (if (= 0 (remainder fill (assoc-get 'R HOLE-FILL-LIST)))
498
+ (ly:stencil-add
499
+ ((if
500
+ (= fill (expt (assoc-get 'R HOLE-FILL-LIST) 2))
501
+ gray-colorize
502
+ identity)
503
+ ((standard-e-stencil
504
+ (+ (- 1.0 (* 2 (/ thick radius))) (/ thick radius 2))
505
+ (+ (- 1.0 (* 2 (/ thick radius))) (/ thick radius 2)))
506
+ radius
507
+ (* 4 thick)
508
+ 1
509
+ layout
510
+ props))
511
+ ((standard-e-stencil 1.0 1.0) radius thick 1 layout props)
512
+ (column-circle-stencil
513
+ (* radius (+ (- 1.0 (* 4 (/ thick radius))) (/ thick radius 2)))
514
+ thick
515
+ (*
516
+ (if (= 0 (remainder fill (assoc-get 'F HOLE-FILL-LIST)))
517
+ (assoc-get 'F HOLE-FILL-LIST)
518
+ 1)
519
+ (if (= fill (expt (assoc-get 'R HOLE-FILL-LIST) 2))
520
+ (/ fill (expt (assoc-get 'R HOLE-FILL-LIST) 2))
521
+ (/ fill (assoc-get 'R HOLE-FILL-LIST))))
522
+ layout
523
+ props))
524
+ (column-circle-stencil radius thick fill layout props)))
525
+
526
+ ;;; Flute family stencils
527
+
528
+ (define flute-lh-b-key-stencil
529
+ (standard-path-stencil
530
+ '((0 1.3)
531
+ (0 1.625 -0.125 1.75 -0.25 1.75)
532
+ (-0.55 1.75 -0.55 0.95 -0.25 0.7)
533
+ (0 0.4 0 0.125 0 0))
534
+ 2
535
+ 1.55))
536
+
537
+ (define flute-lh-bes-key-stencil
538
+ (standard-path-stencil
539
+ '((0 1.3)
540
+ (0 1.625 -0.125 1.75 -0.25 1.75)
541
+ (-0.55 1.75 -0.55 0.95 -0.25 0.7)
542
+ (0 0.4 0 0.125 0 0))
543
+ 2.0
544
+ 1.3))
545
+
546
+ (define (flute-lh-gis-rh-bes-key-stencil deg)
547
+ (rich-path-stencil
548
+ '((0.1 0.1 0.2 0.4 0.3 0.6)
549
+ (0.3 1.0 0.8 1.0 0.8 0.7)
550
+ (0.8 0.3 0.5 0.3 0 0))
551
+ 1.0
552
+ 1.0
553
+ (lambda (stencil) (ly:stencil-rotate stencil deg 0 0))))
554
+
555
+ (define flute-lh-gis-key-stencil (flute-lh-gis-rh-bes-key-stencil 0))
556
+
557
+ (define flute-rh-bes-key-stencil (flute-lh-gis-rh-bes-key-stencil 200))
558
+
559
+ (define flute-rh-d-key-stencil little-elliptical-key-stencil)
560
+
561
+ (define flute-rh-dis-key-stencil little-elliptical-key-stencil)
562
+
563
+ (define flute-rh-ees-key-stencil
564
+ (standard-path-stencil
565
+ '((0.8 0) (1.1 0 1.1 0.75 0.7 0.75) (0.5 0.75) (0.15 0.75 0.1 0.2 0 0))
566
+ -2.38
567
+ 1.4))
568
+
569
+ (define (piccolo-rh-x-key-stencil radius thick fill layout props)
570
+ (interpret-markup
571
+ layout
572
+ props
573
+ (make-general-align-markup
574
+ Y
575
+ DOWN
576
+ (make-concat-markup
577
+ (make-name-keylist
578
+ `(,(text-fill-translate fill))
579
+ '(("X" . #f))
580
+ (* 9 radius
581
+ (magstep
582
+ (chain-assoc-get 'font-size props 0))))))))
583
+
584
+ (define flute-lower-row-stretch 1.4)
585
+
586
+ (define flute-rh-cis-key-stencil
587
+ (standard-path-stencil
588
+ '((0 0.75) (-0.8 0.75 -0.8 0 0 0))
589
+ flute-lower-row-stretch
590
+ flute-lower-row-stretch))
591
+
592
+ (define flute-rh-c-key-stencil
593
+ (standard-path-stencil
594
+ '((0 0.75) (0.4 0.75) (0.4 0) (0 0))
595
+ flute-lower-row-stretch
596
+ flute-lower-row-stretch))
597
+
598
+ (define flute-rh-b-key-stencil
599
+ (standard-path-stencil
600
+ '((0 0.75) (0.25 0.75) (0.25 0) (0 0))
601
+ flute-lower-row-stretch
602
+ flute-lower-row-stretch))
603
+
604
+ (define flute-rh-gz-key-stencil
605
+ (rich-path-stencil
606
+ '((0.1 0.1 0.4 0.2 0.6 0.3)
607
+ (1.0 0.3 1.0 0.8 0.7 0.8)
608
+ (0.3 0.8 0.3 0.5 0 0))
609
+ flute-lower-row-stretch
610
+ flute-lower-row-stretch
611
+ (lambda (stencil) (ly:stencil-rotate stencil 160 0 0))))
612
+
613
+ ;;; Shared oboe/clarinet stencils
614
+
615
+ (define (oboe-lh-gis-lh-low-b-key-stencil gis?)
616
+ (let*
617
+ ((x 1.2)
618
+ (y 0.4)
619
+ (scaling-factor 1.7)
620
+ (up-part
621
+ (ly:bezier-extract
622
+ `((0.0 . 0.0) (0.0 . ,y) (,x . ,y) (,x . 0.0))
623
+ 0
624
+ 0.8))
625
+ (down-part
626
+ (ly:bezier-extract
627
+ `((,x . 0.0) (,x . ,(- y)) (0.0 . ,(- y)) (0.0 . 0.0))
628
+ 0.2
629
+ 1)))
630
+ (if gis?
631
+ (standard-path-stencil
632
+ (append
633
+ (append
634
+ `((0.25 ,(/ y -2) 0.75 ,(/ y -2) 1.0 0.0))
635
+ (map (lambda (l)
636
+ (flatten-list
637
+ (map (lambda (x)
638
+ (coord-translate
639
+ (coord-rotated x (cons y (* 2 0.25)))
640
+ '(1.0 . 0)))
641
+ l)))
642
+ `(((0 . ,y) (,x . ,y) (,x . 0))
643
+ ((,x . ,(- y)) (0 . ,(- y)) (0 . 0)))))
644
+ `((0.75 ,(/ y -2) 0.25 ,(/ y -2) 0.0 0.0)))
645
+ scaling-factor
646
+ scaling-factor)
647
+ (standard-path-stencil
648
+ (map (lambda (l)
649
+ (flatten-list
650
+ (map (lambda (x)
651
+ (coord-rotated x (cons y (* 2 0.25))))
652
+ l)))
653
+ `(,(list-tail up-part 1)
654
+ ,(list-head down-part 1)
655
+ ,(list-tail down-part 1)))
656
+ (- scaling-factor)
657
+ (- scaling-factor)))))
658
+
659
+ (define oboe-lh-gis-key-stencil (oboe-lh-gis-lh-low-b-key-stencil #t))
660
+
661
+ (define oboe-lh-low-b-key-stencil (oboe-lh-gis-lh-low-b-key-stencil #f))
662
+
663
+ (define (oboe-lh-ees-lh-bes-key-stencil ees?)
664
+ (standard-path-stencil
665
+ `((0 1.5)
666
+ (0 1.625 -0.125 1.75 -0.25 1.75)
667
+ (-0.5 1.75 -0.5 0.816 -0.25 0.5)
668
+ (0 0.25 0 0.125 0 0)
669
+ (0 ,(if ees? -0.6 -0.3)))
670
+ (* (if ees? -1.0 1.0) -1.8)
671
+ 1.8))
672
+
673
+ (define oboe-lh-ees-key-stencil (oboe-lh-ees-lh-bes-key-stencil #t))
674
+
675
+ (define oboe-lh-bes-key-stencil (oboe-lh-ees-lh-bes-key-stencil #f))
676
+
677
+ ;;; Oboe family stencils
678
+
679
+ (define (oboe-lh-octave-key-stencil long?)
680
+ (let* ((h (if long? 1.4 1.2)))
681
+ (standard-path-stencil
682
+ `((-0.4 0 -0.4 1.0 -0.1 1.0)
683
+ (-0.1 ,h)
684
+ (0.1 ,h)
685
+ (0.1 1.0)
686
+ (0.4 1.0 0.4 0 0 0))
687
+ 2.0
688
+ 2.0)))
689
+
690
+ (define oboe-lh-I-key-stencil (oboe-lh-octave-key-stencil #f))
691
+
692
+ (define oboe-lh-II-key-stencil (oboe-lh-octave-key-stencil #f))
693
+
694
+ (define oboe-lh-III-key-stencil (oboe-lh-octave-key-stencil #t))
695
+
696
+ (define oboe-lh-b-key-stencil (standard-e-stencil 0.6 0.8))
697
+
698
+ (define oboe-lh-d-key-stencil little-elliptical-key-stencil)
699
+
700
+ (define oboe-lh-cis-key-stencil little-elliptical-key-stencil)
701
+
702
+ (define oboe-lh-f-key-stencil (standard-e-stencil 0.5 1.0))
703
+
704
+ (define oboe-rh-a-key-stencil (standard-e-stencil 1.0 0.45))
705
+
706
+ (define oboe-rh-gis-key-stencil (standard-e-stencil 0.45 1.2))
707
+
708
+ (define oboe-rh-d-key-stencil little-elliptical-key-stencil)
709
+
710
+ (define oboe-rh-f-key-stencil little-elliptical-key-stencil)
711
+
712
+ (define (oboe-rh-c-rh-ees-key-stencil c?)
713
+ (rich-path-stencil
714
+ '((1.0 0.0 1.0 0.70 1.5 0.70)
715
+ (2.25 0.70 2.25 -0.4 1.5 -0.4)
716
+ (1.0 -0.4 1.0 0 0 0)
717
+ (-0.15 0))
718
+ 2.0
719
+ 1.4
720
+ (lambda (stencil) (ly:stencil-rotate stencil (if c? 170 180) 0 0))))
721
+
722
+ (define oboe-rh-banana-key-stencil oboe-rh-gis-key-stencil)
723
+
724
+ (define oboe-rh-c-key-stencil (oboe-rh-c-rh-ees-key-stencil #t))
725
+
726
+ (define oboe-rh-cis-key-stencil
727
+ (rich-path-stencil
728
+ '((0.6 0.0 0.6 0.50 1.25 0.50)
729
+ (2.25 0.50 2.25 -0.4 1.25 -0.4)
730
+ (0.6 -0.4 0.6 0 0 0))
731
+ -0.9
732
+ 1.0
733
+ (lambda (stencil) (ly:stencil-rotate stencil 0 0 0))))
734
+
735
+ (define oboe-rh-ees-key-stencil (oboe-rh-c-rh-ees-key-stencil #f))
736
+
737
+ ;;; Clarinet family stencils
738
+
739
+ (define clarinet-lh-thumb-key-stencil
740
+ (variable-column-circle-stencil 0.9))
741
+
742
+ (define clarinet-lh-R-key-stencil
743
+ (let* ((halfbase (cos (/ PI 10)))
744
+ (height (*
745
+ halfbase
746
+ (/ (sin (/ (* 4 PI) 10)) (cos (/ (* 4 PI) 10))))))
747
+ (standard-path-stencil
748
+ `(
749
+ (0 ,(/ -4.0 3.0) -2.0 ,(/ -4.0 3.0) -2.0 0.0)
750
+ (-1.5 ,(* 0.5 height) -1.25 ,(* 0.75 height) -1.0 ,height)
751
+ (-0.75 ,(* 0.75 height) -0.5 ,(* 0.5 height) 0.0 0.0))
752
+ 0.9
753
+ 0.9)))
754
+
755
+ (define (clarinet-lh-a-key-stencil radius thick fill layout props)
756
+ (let* ((width 0.4) (height 0.75) (linelen 0.45))
757
+ (ly:stencil-add
758
+ ((standard-e-stencil width height) radius thick fill layout props)
759
+ (ly:stencil-translate
760
+ (make-line-stencil thick 0 0 0 (* linelen radius))
761
+ (cons 0 (* height radius))))))
762
+
763
+ (define clarinet-lh-gis-key-stencil (upper-key-stencil 0.0 0.0 1.3 2.0))
764
+
765
+ (define clarinet-lh-ees-key-stencil little-elliptical-key-stencil)
766
+
767
+ (define clarinet-lh-cis-key-stencil oboe-lh-gis-key-stencil)
768
+
769
+ (define clarinet-lh-f-key-stencil oboe-lh-low-b-key-stencil)
770
+
771
+ (define clarinet-lh-e-key-stencil oboe-lh-ees-key-stencil)
772
+
773
+ (define clarinet-lh-fis-key-stencil oboe-lh-bes-key-stencil)
774
+
775
+ (define clarinet-lh-d-key-stencil (standard-e-stencil 1.0 0.4))
776
+
777
+ (define clarinet-rh-low-c-key-stencil
778
+ (standard-path-stencil
779
+ '((0.0 1.5)
780
+ (0.0 2.5 -1.0 2.5 -1.0 0.75)
781
+ (-1.0 0.1 0.0 0.25 0.0 0.3)
782
+ (0.0 0.0))
783
+ 0.8
784
+ 0.8))
785
+
786
+ (define clarinet-rh-low-cis-key-stencil
787
+ (standard-path-stencil
788
+ '((0.0 1.17)
789
+ (0.0 1.67 -1.0 1.67 -1.0 0.92)
790
+ (-1.0 0.47 0.0 0.52 0.0 0.62)
791
+ (0.0 0.0))
792
+ 0.8
793
+ 0.8))
794
+
795
+ (define clarinet-rh-low-d-key-stencil
796
+ (standard-path-stencil
797
+ '((0.0 1.05)
798
+ (0.0 1.55 -1.0 1.55 -1.0 0.8)
799
+ (-1.0 0.35 0.0 0.4 0.0 0.5)
800
+ (0.0 0.0))
801
+ 0.8
802
+ 0.8))
803
+
804
+ (define clarinet-rh-one-key-stencil (standard-e-stencil 0.5 0.25))
805
+
806
+ (define clarinet-rh-two-key-stencil clarinet-rh-one-key-stencil)
807
+
808
+ (define clarinet-rh-three-key-stencil clarinet-rh-one-key-stencil)
809
+
810
+ (define clarinet-rh-four-key-stencil clarinet-rh-one-key-stencil)
811
+
812
+ (define clarinet-rh-b-key-stencil little-elliptical-key-stencil)
813
+
814
+ ;; cl low-rh values
815
+ (define CL-RH-HAIR 0.09)
816
+ (define CL-RH-H-STRETCH 2.7)
817
+ (define CL-RH-V-STRETCH 0.9)
818
+
819
+ ;; TODO
820
+ ;; there is some unnecessary information duplication here.
821
+ ;; need a way to control all of the below stencils so that if one
822
+ ;; changes, all change...
823
+
824
+ (define clarinet-rh-fis-key-stencil
825
+ (standard-path-stencil
826
+ `(,(bezier-head-for-stencil
827
+ '((0.0 . 0.0) (0.0 . -1.0) (1.0 . -1.0) (1.0 . 0.0))
828
+ 0.5)
829
+ ,(bezier-head-for-stencil
830
+ '((0.5 . -0.75) (0.5 . 0.25) (1.5 . 0.25) (1.5 . -0.75))
831
+ 0.5)
832
+ (1.0 1.0 0.0 1.0 0.0 0.0))
833
+ CL-RH-H-STRETCH
834
+ CL-RH-V-STRETCH))
835
+
836
+ (define clarinet-rh-gis-key-stencil
837
+ (standard-path-stencil
838
+ '((0.0 1.0 1.0 1.0 1.0 0.0) (1.0 -1.0 0.0 -1.0 0.0 0.0))
839
+ CL-RH-H-STRETCH
840
+ CL-RH-V-STRETCH))
841
+
842
+ (define clarinet-rh-e-key-stencil
843
+ (standard-path-stencil
844
+ `(,(bezier-head-for-stencil
845
+ '((0.0 . 0.0) (0.0 . -1.0) (1.0 . -1.0) (1.0 . 0.0))
846
+ 0.5)
847
+ ,(bezier-head-for-stencil
848
+ '((0.5 . -0.75) (0.5 . 0.25) (1.5 . 0.25) (1.5 . -0.75))
849
+ 0.5)
850
+ ,(bezier-head-for-stencil
851
+ `((1.0 . 0.0) (,(/ 1 3) . 0.0) (,(/ 1 3) . 1.5) (1.0 . 1.5))
852
+ 0.5)
853
+ ,(bezier-head-for-stencil
854
+ `((0.5 . 0.75) (,(/ -1 6) . 0.75) (,(/ -1 6) . -0.75) (0.5 . -0.75))
855
+ 0.5))
856
+ CL-RH-H-STRETCH
857
+ CL-RH-V-STRETCH))
858
+
859
+ (define clarinet-rh-f-key-stencil clarinet-rh-gis-key-stencil)
860
+
861
+ (define bass-clarinet-rh-ees-key-stencil
862
+ (standard-path-stencil
863
+ `(,(bezier-head-for-stencil
864
+ '((0.0 . 0.0) (0.0 . -1.0) (1.0 . -1.0) (1.0 . 0.0))
865
+ 0.5)
866
+ ,(bezier-head-for-stencil
867
+ '((0.5 . -0.75) (0.5 . 0.25) (1.5 . 0.25) (1.5 . -0.75))
868
+ 0.5)
869
+ (1.0 1.0 0.0 1.0 0.0 0.0))
870
+ CL-RH-H-STRETCH
871
+ (- CL-RH-V-STRETCH)))
872
+
873
+ (define low-bass-clarinet-rh-ees-key-stencil clarinet-rh-e-key-stencil)
874
+
875
+ (define clarinet-rh-d-key-stencil clarinet-rh-gis-key-stencil)
876
+
877
+ ;;; Saxophone family stencils
878
+
879
+ (define saxophone-lh-ees-key-stencil (upper-key-stencil 0.0 0.0 1.3 2.0))
880
+
881
+ (define saxophone-lh-f-key-stencil (upper-key-stencil 0.0 0.0 1.3 2.0))
882
+
883
+ (define saxophone-lh-d-key-stencil (upper-key-stencil 0.0 0.0 1.3 2.0))
884
+
885
+ (define saxophone-lh-front-f-key-stencil (standard-e-stencil 0.7 0.7))
886
+
887
+ (define saxophone-lh-bes-key-stencil (standard-e-stencil 0.5 0.5))
888
+
889
+ (define saxophone-lh-T-key-stencil (standard-e-stencil 0.75 0.75))
890
+
891
+ (define saxophone-lh-gis-key-stencil
892
+ (standard-path-stencil
893
+ '((0.0 0.4)
894
+ (0.0 0.8 3.0 0.8 3.0 0.4)
895
+ (3.0 0.0)
896
+ (3.0 -0.4 0.0 -0.4 0.0 0.0))
897
+ 0.8
898
+ 0.8))
899
+
900
+ (define (saxophone-lh-b-cis-key-stencil flip?)
901
+ (standard-path-stencil
902
+ '((0.0 1.0)
903
+ (0.4 1.0 0.8 0.9 1.35 0.8)
904
+ (1.35 0.0)
905
+ (0.0 0.0))
906
+ (* (if flip? -1 1) 0.8)
907
+ 0.8))
908
+
909
+ (define saxophone-lh-cis-key-stencil (saxophone-lh-b-cis-key-stencil #t))
910
+
911
+ (define saxophone-lh-b-key-stencil (saxophone-lh-b-cis-key-stencil #f))
912
+
913
+ (define saxophone-lh-low-bes-key-stencil
914
+ (standard-path-stencil
915
+ '((3.0 0.0) (3.0 -1.5 0.0 -1.5 0.0 0.0))
916
+ 0.8
917
+ 0.8))
918
+
919
+ (define (saxophone-rh-side-key-stencil width height)
920
+ (standard-path-stencil
921
+ `((0.0 ,height)
922
+ (0.05 ,(+ height 0.05) 0.1 ,(+ height 0.1) 0.15 ,(+ height 0.15))
923
+ (,(- width 0.15) ,(+ height 0.15))
924
+ (,(- width 0.1)
925
+ ,(+ height 0.1)
926
+ ,(- width 0.05)
927
+ ,(+ height 0.05)
928
+ ,width
929
+ ,height)
930
+ (,width 0.0)
931
+ (,(- width 0.05) -0.05 ,(- width 0.1) -0.1 ,(- width 0.15) -0.15)
932
+ (0.15 -0.15)
933
+ (0.1 -0.1 0.05 -0.05 0.0 0.0))
934
+ 1.0
935
+ 1.0))
936
+
937
+ (define saxophone-rh-e-key-stencil (saxophone-rh-side-key-stencil 0.9 1.2))
938
+
939
+ (define saxophone-rh-c-key-stencil (saxophone-rh-side-key-stencil 0.9 0.6))
940
+
941
+ (define saxophone-rh-bes-key-stencil (saxophone-rh-side-key-stencil 0.9 0.45))
942
+
943
+ (define saxophone-rh-high-fis-key-stencil
944
+ (standard-path-stencil
945
+ (let* ((angle -30)
946
+ (dir2 (ly:directed (* -0.5 angle)))
947
+ ;; This comparatively awful expression calculates how far
948
+ ;; along the tangents opened by 'angle' with a radius of 0.6
949
+ ;; the control points need to move in order to have the
950
+ ;; middle of the bezier curve exactly on radius.
951
+ (out (* 0.6 (coord-y dir2) (- 4/3 (* 1/3 (coord-x dir2))))))
952
+ (append
953
+ '((0.0 1.0) (0.0 1.4 0.6 1.4 0.6 1.0) (0.6 0.0))
954
+ `((0.6 ,(- out)
955
+ ,@(flatten-list (map (lambda (x) (coord-rotated x angle))
956
+ `((0.6 . ,out)
957
+ (0.6 . 0.0))))))
958
+ (map (lambda (l)
959
+ (flatten-list
960
+ (map (lambda (x)
961
+ (coord-rotated x angle))
962
+ l)))
963
+ '(((0.6 . -1.0))
964
+ ((0.6 . -1.4) (0.0 . -1.4) (0.0 . -1.0))
965
+ ((0.0 . 0.0))))))
966
+ 0.75
967
+ 0.75))
968
+
969
+ (define saxophone-rh-fis-key-stencil (standard-e-stencil 1.0 0.5))
970
+
971
+ (define saxophone-rh-ees-key-stencil (standard-e-stencil 1.2 0.5))
972
+
973
+ (define saxophone-rh-low-c-key-stencil
974
+ (standard-path-stencil
975
+ '((3.0 0.0) (3.0 -1.5 0.0 -1.5 0.0 0.0))
976
+ 0.8
977
+ 0.8))
978
+
979
+ (define (saxophone-lh-low-a-key-stencil radius thick fill layout props)
980
+ (interpret-markup
981
+ layout
982
+ props
983
+ (make-general-align-markup
984
+ Y
985
+ DOWN
986
+ (make-concat-markup
987
+ (make-name-keylist
988
+ `(,(text-fill-translate fill))
989
+ '(("lowA" . #f))
990
+ (* 9 radius
991
+ (magstep
992
+ (chain-assoc-get 'font-size props 0))))))))
993
+
994
+ ;;; Bassoon family stencils
995
+
996
+ (define (bassoon-bend-info-maker height gap cut)
997
+ (let* (
998
+ (first-bezier
999
+ (flatten-list
1000
+ (ly:bezier-extract
1001
+ `((0.0 . ,(+ height gap))
1002
+ (0.0 . ,(+ height (+ gap 1.0)))
1003
+ (1.0 . ,(+ height (+ gap 2.0)))
1004
+ (2.0 . ,(+ height (+ gap 2.0))))
1005
+ 0
1006
+ cut)))
1007
+ (second-bezier
1008
+ (flatten-list
1009
+ (reverse
1010
+ (ly:bezier-extract
1011
+ `((1.0 . ,height)
1012
+ (1.0 . ,(+ 0.5 height))
1013
+ (1.5 . ,(+ 1.0 height))
1014
+ (2.0 . ,(+ 1.0 height)))
1015
+ 0
1016
+ cut))))
1017
+ (slope-offset1
1018
+ (get-slope-offset
1019
+ `(,(list-ref first-bezier 4) . ,(list-ref first-bezier 5))
1020
+ `(,(list-ref first-bezier 6) . ,(list-ref first-bezier 7))))
1021
+ (slope-offset2
1022
+ (get-slope-offset
1023
+ `(,(list-ref second-bezier 0) . ,(list-ref second-bezier 1))
1024
+ `(,(list-ref second-bezier 2) . ,(list-ref second-bezier 3)))))
1025
+ (list first-bezier second-bezier slope-offset1 slope-offset2)))
1026
+
1027
+ (define
1028
+ (make-tilted-portion
1029
+ first-bezier
1030
+ second-bezier
1031
+ slope-offset1
1032
+ slope-offset2
1033
+ keylen
1034
+ bezier?)
1035
+ (append
1036
+ `((,(+ keylen (list-ref first-bezier 6))
1037
+ ,(+
1038
+ (*
1039
+ (car slope-offset1)
1040
+ (+ keylen (list-ref first-bezier 6))) (cdr slope-offset1))))
1041
+ ((if bezier? (lambda (x) `(,(concatenate x))) identity)
1042
+ `((,(+ (+ keylen 1.75) (list-ref first-bezier 6))
1043
+ ,(+
1044
+ (*
1045
+ (car slope-offset1)
1046
+ (+ (+ keylen 1.75) (list-ref first-bezier 6)))
1047
+ (cdr slope-offset1)))
1048
+ (,(+ (+ keylen 1.75) (list-ref second-bezier 0))
1049
+ ,(+
1050
+ (*
1051
+ (car slope-offset2)
1052
+ (+ (+ keylen 1.75) (list-ref second-bezier 0)))
1053
+ (cdr slope-offset2)))
1054
+ (,(+ keylen (list-ref second-bezier 0))
1055
+ ,(+
1056
+ (* (car slope-offset2) (+ keylen (list-ref second-bezier 0)))
1057
+ (cdr slope-offset2)))))
1058
+ `(,(list-head second-bezier 2))))
1059
+
1060
+ (define (rich-bassoon-uber-key-stencil height gap cut keylen d1 d2 proc bezier?)
1061
+ (let* ((info-list (bassoon-bend-info-maker height gap cut))
1062
+ (first-bezier (car info-list))
1063
+ (second-bezier (cadr info-list))
1064
+ (slope-offset1 (caddr info-list))
1065
+ (slope-offset2 (cadddr info-list)))
1066
+ (rich-path-stencil
1067
+ (append
1068
+ `((0.0 ,(+ height gap))
1069
+ ,(list-tail first-bezier 2))
1070
+ (make-tilted-portion
1071
+ first-bezier
1072
+ second-bezier
1073
+ slope-offset1
1074
+ slope-offset2
1075
+ keylen
1076
+ bezier?)
1077
+ `(,(list-tail second-bezier 2)
1078
+ (1.0 0.0)
1079
+ (0.0 0.0)))
1080
+ d1
1081
+ d2
1082
+ proc)))
1083
+
1084
+ (define (bassoon-uber-key-stencil height gap cut keylen d1 d2)
1085
+ (rich-bassoon-uber-key-stencil height gap cut keylen d1 d2 identity #t))
1086
+
1087
+ (define bassoon-cc-six-key-stencil (standard-e-stencil 1.5 0.8))
1088
+
1089
+ (define bassoon-lh-he-key-stencil little-elliptical-key-stencil)
1090
+
1091
+ (define bassoon-lh-hees-key-stencil little-elliptical-key-stencil)
1092
+
1093
+ (define bassoon-lh-lhees-key-stencil little-elliptical-key-stencil)
1094
+
1095
+ (define bassoon-lh-ees-key-stencil
1096
+ (rich-e-stencil
1097
+ 1.2
1098
+ 0.6
1099
+ (lambda (stencil) (ly:stencil-rotate stencil 30 0 0))))
1100
+
1101
+ (define bassoon-lh-cis-key-stencil
1102
+ (rich-e-stencil
1103
+ 1.0
1104
+ 0.5
1105
+ (lambda (stencil) (ly:stencil-rotate stencil 30 0 0))))
1106
+
1107
+ (define bassoon-lh-lbes-key-stencil
1108
+ (bassoon-uber-key-stencil 1.0 0.5 0.7 0.5 0.6 -0.6))
1109
+
1110
+ (define bassoon-lh-lb-key-stencil
1111
+ (bassoon-uber-key-stencil 2.0 0.5 0.9 1.2 0.6 -0.6))
1112
+
1113
+ (define bassoon-lh-lc-key-stencil
1114
+ (rich-pe-stencil 1.0 1.0 135 315 identity))
1115
+
1116
+ (define bassoon-lh-ld-key-stencil
1117
+ (standard-path-stencil
1118
+ '((-0.8 4.0 1.4 4.0 0.6 0.0)
1119
+ (0.5 -0.5 0.5 -0.8 0.6 -1.0)
1120
+ (0.7 -1.2 0.8 -1.3 0.8 -1.8)
1121
+ (0.5 -1.8)
1122
+ (0.5 -1.4 0.4 -1.2 0.3 -1.1)
1123
+ (0.2 -1.0 0.1 -0.5 0.0 0.0))
1124
+ 1.0
1125
+ 1.0))
1126
+
1127
+ (define bassoon-lh-d-flick-key-stencil
1128
+ (let ((height 3.0))
1129
+ (standard-path-stencil
1130
+ `((0.0 ,height)
1131
+ (0.2 ,(+ height 1.6) 0.8 ,(+ height 1.8) 1.0 ,(+ height 1.8))
1132
+ (1.4 ,(+ height 1.8) 1.9 ,(+ height 1.3) 1.9 ,(+ height 1.0))
1133
+ (1.9 ,(+ height 0.7) 1.0 ,(+ height 0.4) 0.8 ,(+ height 0.3))
1134
+ (0.6 ,(+ height 0.2) 0.4 ,(+ height 0.1) 0.4 ,(- height 0.1))
1135
+ (0.4 0.0)
1136
+ (0.0 0.0))
1137
+ -1.0
1138
+ -1.0)))
1139
+
1140
+ (define bassoon-lh-c-flick-key-stencil
1141
+ (let ((height 3.0))
1142
+ (standard-path-stencil
1143
+ `((0.0 ,height)
1144
+ (0.0 ,(+ height 1.6) 0.4 ,(+ height 1.8) 0.5 ,(+ height 1.8))
1145
+ (0.7 ,(+ height 1.8) 0.9 ,(+ height 1.3) 0.9 ,(+ height 1.0))
1146
+ (0.9 ,(+ height 0.5) 0.7 ,(+ height 0.4) 0.6 ,(+ height 0.3))
1147
+ (0.5 ,(+ height 0.2) 0.4 ,(+ height 0.1) 0.4 ,(- height 0.1))
1148
+ (0.4 0.0)
1149
+ (0.0 0.0))
1150
+ -1.0
1151
+ -1.0)))
1152
+
1153
+ (define bassoon-lh-a-flick-key-stencil
1154
+ (bassoon-uber-key-stencil 5.0 1.0 0.3 0.6 -0.5 -0.5))
1155
+
1156
+ (define bassoon-lh-thumb-cis-key-stencil
1157
+ (bassoon-uber-key-stencil 1.5 1.5 0.6 0.6 -0.6 0.6))
1158
+
1159
+ (define bassoon-lh-whisper-key-stencil (variable-column-circle-stencil 0.7))
1160
+
1161
+ (define bassoon-rh-cis-key-stencil
1162
+ (rich-bassoon-uber-key-stencil
1163
+ 1.1
1164
+ 1.5
1165
+ 0.9
1166
+ 0.3
1167
+ 0.5
1168
+ 0.5
1169
+ (lambda (stencil) (ly:stencil-rotate stencil -76 0 0))
1170
+ #t))
1171
+
1172
+ (define bassoon-rh-bes-key-stencil little-elliptical-key-stencil)
1173
+
1174
+ (define bassoon-rh-fis-key-stencil
1175
+ (rich-bassoon-uber-key-stencil 0.5 1.0 0.8 1.5 -0.7 0.7 identity #f))
1176
+
1177
+ (define bassoon-rh-f-key-stencil
1178
+ (let* ((height 0.5) (gap 1.0) (cut 0.8) (keylen 1.5)
1179
+ (info-list (bassoon-bend-info-maker height gap cut))
1180
+ (first-bezier (car info-list))
1181
+ (second-bezier (cadr info-list))
1182
+ (slope-offset1 (caddr info-list))
1183
+ (slope-offset2 (cadddr info-list)))
1184
+ (standard-path-stencil
1185
+ (append
1186
+ (map
1187
+ (lambda (l)
1188
+ (map
1189
+ -
1190
+ l
1191
+ (apply circular-list (list-tail first-bezier 6))))
1192
+ (make-tilted-portion
1193
+ first-bezier
1194
+ second-bezier
1195
+ slope-offset1
1196
+ slope-offset2
1197
+ keylen
1198
+ #t))
1199
+ '((0.0 0.0)))
1200
+ -0.7
1201
+ 0.7)))
1202
+
1203
+ (define bassoon-rh-gis-key-stencil
1204
+ (bassoon-uber-key-stencil 0.3 1.0 0.8 1.0 -0.7 0.7))
1205
+
1206
+ (define bassoon-rh-thumb-bes-key-stencil
1207
+ (bassoon-uber-key-stencil 1.0 1.0 0.9 1.0 0.7 0.7))
1208
+
1209
+ (define bassoon-rh-thumb-e-key-stencil (variable-column-circle-stencil 0.7))
1210
+
1211
+ (define bassoon-rh-thumb-fis-key-stencil
1212
+ (bassoon-uber-key-stencil 1.0 1.2 0.9 1.0 0.7 0.7))
1213
+
1214
+ (define bassoon-rh-thumb-gis-key-stencil
1215
+ (bassoon-uber-key-stencil 1.2 0.8 0.9 0.4 0.7 0.7))