]> git.donarmstrong.com Git - lilypond.git/blob - scm/define-stencil-commands.scm
Gets rid of bracket stencil command
[lilypond.git] / scm / define-stencil-commands.scm
1 ;;;; This file is part of LilyPond, the GNU music typesetter.
2 ;;;;
3 ;;;; Copyright (C) 2005--2012 Han-Wen Nienhuys <hanwen@xs4all.nl>
4 ;;;;
5 ;;;; LilyPond is free software: you can redistribute it and/or modify
6 ;;;; it under the terms of the GNU General Public License as published by
7 ;;;; the Free Software Foundation, either version 3 of the License, or
8 ;;;; (at your option) any later version.
9 ;;;;
10 ;;;; LilyPond is distributed in the hope that it will be useful,
11 ;;;; but WITHOUT ANY WARRANTY; without even the implied warranty of
12 ;;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13 ;;;; GNU General Public License for more details.
14 ;;;;
15 ;;;; You should have received a copy of the GNU General Public License
16 ;;;; along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
17
18 ;; TODO:
19 ;;  - stencil-commands should have docstrings.
20
21 (define-public (ly:all-stencil-commands)
22   "Return the list of stencil commands that can be
23 defined in the output modules (@file{output-*.scm})."
24   '(bezier-sandwich
25     blank
26     char
27     circle
28     dashed-line
29     dashed-slur
30     dot
31     draw-line
32     ellipse
33     embedded-ps
34     embedded-svg
35     end-enclosing-id-node
36     glyph-string
37     grob-cause
38     named-glyph
39     no-origin
40     oval
41     page-link
42     path
43     partial-ellipse
44     placebox
45     polygon
46     repeat-slash
47     resetcolor
48     resetrotation
49     resetscale
50     round-filled-box
51     setcolor
52     setrotation
53     setscale
54     start-enclosing-id-node
55     text
56     unknown
57     url-link
58     utf-8-string
59     zigzag-line
60     ))
61
62 ;; TODO:
63 ;;  - output-backend-commands should have docstrings.
64
65 (define-public (ly:all-output-backend-commands)
66   "Return the list of extra output backend commands that
67 are used internally in @file{lily/@/stencil-interpret.cc}."
68   '(color
69     combine-stencil
70     delay-stencil-evaluation
71     footnote
72     id
73     rotate-stencil
74     scale-stencil
75     translate-stencil
76     ))
77
78 (map ly:register-stencil-expression
79   (append (ly:all-stencil-commands)
80           (ly:all-output-backend-commands)))