├── .gitignore
├── Makefile
├── README.md
├── ToDo list for Releases.txt
├── Version history.txt
├── extension
├── Addons.xcu
├── Language
│ ├── deutsch.ini
│ ├── english.ini
│ ├── espanol.ini
│ └── francais.ini
├── META-INF
│ └── manifest.xml
├── OOoLilyPond
│ ├── Batch.xba
│ ├── Config.xba
│ ├── Editor.xba
│ ├── GUI_Ask.xdl
│ ├── GUI_Batch.xdl
│ ├── GUI_Config.xdl
│ ├── GUI_Editor.xdl
│ ├── GUI_Out.xdl
│ ├── GUI_Tmpl.xdl
│ ├── LilyPond.xba
│ ├── Messages.xba
│ ├── OOoLilyPond.xba
│ ├── Templates.xba
│ ├── Tools.xba
│ ├── Vars.xba
│ ├── dialog.xlb
│ └── script.xlb
├── Office
│ └── UI
│ │ ├── BaseWindowState.xcu
│ │ ├── BasicIDEWindowState.xcu
│ │ ├── CalcWindowState.xcu
│ │ ├── DrawWindowState.xcu
│ │ ├── ImpressWindowState.xcu
│ │ ├── MathWindowState.xcu
│ │ ├── StartModuleWindowState.xcu
│ │ └── WriterWindowState.xcu
├── description.xml
├── pkg-desc
│ └── pkg-description.txt
└── templates
│ └── 2.12
│ ├── Default [SVG -dcrop].ly
│ ├── Default [SVG].ly
│ ├── Default.ly
│ ├── Deutsch [SVG -dcrop].ly
│ ├── Deutsch [SVG].ly
│ ├── Deutsch.ly
│ ├── Direct to LilyPond [SVG -dcrop].ly
│ ├── Direct to LilyPond [SVG].ly
│ ├── Direct to LilyPond.ly
│ ├── Fret Board [SVG -dcrop].ly
│ ├── Fret Board [SVG].ly
│ ├── Fret Board.ly
│ ├── Gitarrengriffe [SVG -dcrop].ly
│ ├── Gitarrengriffe [SVG].ly
│ ├── Gitarrengriffe.ly
│ ├── Italiano [SVG -dcrop].ly
│ ├── Italiano [SVG].ly
│ ├── Italiano.ly
│ ├── Piano [SVG -dcrop].ly
│ ├── Piano [SVG].ly
│ ├── Piano.ly
│ ├── Relative [SVG -dcrop].ly
│ ├── Relative [SVG].ly
│ ├── Relative.ly
│ ├── School Demo [SVG -dcrop].ly
│ ├── School Demo [SVG].ly
│ ├── School Demo.ly
│ ├── School Piano Demo [SVG -dcrop].ly
│ ├── School Piano Demo [SVG].ly
│ ├── School Piano Demo.ly
│ ├── Voice Exercise [SVG -dcrop].ly
│ ├── Voice Exercise [SVG].ly
│ └── Voice Exercise.ly
├── old-README.md
├── translation
├── de.yaml
├── fr.yaml
├── readme.md
└── translate.py
└── update
├── ooolilypond-update.xml
├── readme.md
└── release-notes.txt
/.gitignore:
--------------------------------------------------------------------------------
1 | *.oxt
2 | translation/extension-*
3 | .DS_Store
4 |
--------------------------------------------------------------------------------
/Makefile:
--------------------------------------------------------------------------------
1 | # Make file for the extension
2 | # Please type `make help` for usage information.
3 |
4 | VERSION := $(shell git describe --abbrev=0 --tags)
5 |
6 | all: clean oxt install
7 |
8 | clean:
9 | unopkg remove ooolilypond*.oxt || exit 0
10 | rm -f ooolilypond*.oxt
11 | rm -rf translation/extension-*
12 |
13 | oxt:
14 | cd extension && zip -r ../ooolilypond-$(VERSION).oxt *
15 |
16 | install:
17 | unopkg add ooolilypond-$(VERSION).oxt
18 |
19 | # translation
20 |
21 | de: clean oxtde installde
22 |
23 | oxtde:
24 | translation/translate.py de
25 | cd translation/extension-de && zip -r ../../ooolilypond-$(VERSION)-de.oxt *
26 |
27 | installde:
28 | unopkg add ooolilypond-$(VERSION)-de.oxt
29 |
30 | help:
31 | @echo "make reinstall extension from working directory"
32 | @echo "make clean uninstall all installed ooolilypond extensions"
33 | @echo "make oxt build oxt file"
34 | @echo "make install install oxt file in LibreOffice"
35 | @echo "make de reinstall the German extension from working directory"
36 | @echo "make oxtde translate and build German oxt file"
37 | @echo "make installde install German oxt file in LibreOffice"
38 |
39 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | Wiki: [Home](https://github.com/openlilylib/LO-ly/wiki#ooolilypond) | [Download](https://github.com/openlilylib/LO-ly/wiki/Downloads#downloads) | [Installation](https://github.com/openlilylib/LO-ly/wiki/Installation#installation) | [Tutorial](https://github.com/openlilylib/LO-ly/wiki/Tutorial#tutorial) | [Advanced features](https://github.com/openlilylib/LO-ly/wiki/Advanced-features#advanced-features) | [Reference](https://github.com/openlilylib/LO-ly/wiki/Editor-(main-window-reference)#editor-main-window-reference) | [Configuration](https://github.com/openlilylib/LO-ly/wiki/Config#configuration-dialogue)
2 |
3 | # OOoLilyPond
4 |
5 | | *ANNOUNCEMENT* |
6 | | :---: |
7 | | **OOoLilyPond has moved to a new repository:** |
8 | | **https://github.com/OOoLilyPond** |
9 | | **All past/present/future development can be found at the new location. The page you are viewing right here contains all development up to V. 1.0.1, but it will no longer be maintained.** |
10 |
11 | OOoLilyPond (OLy) is a LibreOffice/OpenOffice extension to include LilyPond music fragments in text documents.
12 |
13 | 
14 |
15 | ## Installation
16 |
17 | * Being a [LibreOffice]/[OpenOffice] extension, you need a version of LibreOffice / OpenOffice installed on your computer, first.
18 | * Second, the music engraving software [LilyPond] must be installed on your system.
19 | * Then just download the latest OLy release from the [download] page.
20 | * The extension can be installed either by opening it with LibreOffice or by following these steps in the menu:
21 |
22 | *Extras > Extension Manager… > Add…*
23 |
24 | and then choosing the downloaded extension file (.oxt).
25 |
26 | Your toolbars in Writer, Impress and Draw should now have a new "OLy" button which launches the extension.
27 |
28 | **You can find a detailed documentation [here in the wiki](https://github.com/openlilylib/LO-ly/wiki/Installation#installation).**
29 |
30 | ## Usage
31 |
32 | [LilyPond] is a powerful musical typesetting software that compiles given source code into graphical output, just like LaTeX does with mathematical formulas.
33 |
34 | OOoLilyPond enables you to enter LilyPond code from within your Office document.
35 | Both the resulting image and its source code will be embedded within the document.
36 | No need to keep any additional files other than the Writer/Draw/Impress document itself.
37 |
38 | To create a new OLy object, just click the "OLy" button and an editor window will open. Enter some LilyPond code and click the "LilyPond" button. After successful compiling, the editor window will close and the resulting image will be visible in your document.
39 |
40 | To edit an existing object, select it first and then click the "OLy" button. In the editor window you will have access to your code again.
41 |
42 | If you want to get to know LilyPond, a good place to start is the [introduction] into LilyPond.
43 |
44 | ### Compatibility
45 |
46 | OOoLilyPond (OLy) works with recent versions of LibreOffice and OpenOffice. Older versions should work as well. It has even been tested with OpenOffice 2.4 without issues.
47 |
48 | Update: Some partial incompatibilities have occured in LibreOffice 6.1.0 to 6.1.4 - see [Issue 22].
49 |
50 | Any content (LilyPond code, templates, OLy configuration files) created with/for older OLy versions (OLy 0.3.x, OLy 0.4.x, OLy 0.5.x) will work with OLy 1.0.x, but not necessarily vice versa.
51 |
52 |
53 | [LibreOffice]: http://libreoffice.org/
54 | [OpenOffice]: http://www.openoffice.org/
55 | [LilyPond]: http://lilypond.org
56 | [download]: https://github.com/openlilylib/LO-ly/wiki/Downloads#downloads
57 | [introduction]: http://lilypond.org/introduction.html
58 | [Introduction into OOoLilyPond]: http://lilypondblog.org/2017/04/ooolilypond-creating-musical-snippets-in-libreoffice-documents/
59 | [Scores of Beauty]: http://lilypondblog.org/
60 | [Issue 22]: https://github.com/openlilylib/LO-ly/issues/22#issuecomment-462500338
61 |
62 | ### Contributors
63 |
64 | [Urs Liska](https://github.com/uliska) (infrastructure, GitHub repo)
65 | [Joram Berger](https://github.com/joram-berger) (infrastructure, feature ideas, improvements, translation)
66 | [Hannes E. Schäuble](https://github.com/edgar79) (improvements and fixes)
67 | [Ipsilon Fede](https://github.com/yfede) (feature ideas)
68 | [tapanis](https://github.com/tapanis) (error reports)
69 | Valentin Villenave (translation)
70 | Olivier Miakinen (translation)
71 | Fernando Villagran (translation)
72 |
73 | ### Authors
74 |
75 | Copyright © 2005 Geoffroy Piroux
76 | Copyright © 2009 Samuel Hartmann
77 | Copyright © 2017 Klaus Blum (current maintainer)
78 |
79 | 
80 |
81 | ## License
82 |
83 | This program is free software. It is licensed under the [GPL3].
84 |
85 | [GPL3]: https://www.gnu.org/licenses/gpl.html "GPL3"
86 |
--------------------------------------------------------------------------------
/ToDo list for Releases.txt:
--------------------------------------------------------------------------------
1 | ToDo list for new Releases:
2 |
3 | ----- Prior to creating Release: -----
4 | (all that can be put into a dedicated branch)
5 |
6 | Version history.txt
7 | - add current version info
8 |
9 | /extension/description.xml
10 | - update version number
11 |
12 | ----- Create Release: -----
13 |
14 | - create OXT file (from the above branch)
15 | * create ZIP file only with the contents
16 | of the "extension" subfolder
17 | and rename to *.OXT
18 | * for the OpenOffice version, use
19 | Addons.xcu from OLy 0.5.7
20 |
21 | - add release-notes.txt
22 | - add same text as Release description
23 |
24 | - now publish Release
25 |
26 | ----- After creating Release: -----
27 |
28 | /update/ooolilypond-update.xml
29 | - update version number
30 | - update download link
31 |
32 | /update/release-notes.txt
33 | - add current version info
34 |
35 | (branch can now be merged into master)
36 |
37 | - update links in /wiki/downloads
38 |
--------------------------------------------------------------------------------
/Version history.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openlilylib/LO-ly/b6046f05f2e3545fb993f0e8f6e5b0312396b04c/Version history.txt
--------------------------------------------------------------------------------
/extension/Addons.xcu:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
9 |
10 |
11 |
12 | com.sun.star.text.TextDocument,com.sun.star.drawing.DrawingDocument,com.sun.star.presentation.PresentationDocument
13 |
14 |
15 | vnd.sun.star.script:OOoLilyPond.OOoLilyPond.OOoLilyPond?language=Basic&location=application
16 |
17 |
18 | OLy
19 |
20 |
21 | _self
22 |
23 |
24 |
25 |
26 | com.sun.star.text.TextDocument
27 |
28 |
29 | vnd.sun.star.script:OOoLilyPond.OOoLilyPond.OOoLilyPondBatch?language=Basic&location=application
30 |
31 |
32 | Batch
33 |
34 |
35 | _self
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 | com.sun.star.text.TextDocument,com.sun.star.drawing.DrawingDocument,com.sun.star.presentation.PresentationDocument
44 |
45 |
46 | vnd.sun.star.script:OOoLilyPond.OOoLilyPond.OOoLilyPond?language=Basic&location=application
47 |
48 |
49 | OOoLilyPond
50 |
51 |
52 | _self
53 |
54 |
55 |
56 |
57 | com.sun.star.text.TextDocument
58 |
59 |
60 | vnd.sun.star.script:OOoLilyPond.OOoLilyPond.OOoLilyPondBatch?language=Basic&location=application
61 |
62 |
63 | OOoLilyPond-Batch
64 |
65 |
66 | _self
67 |
68 |
69 |
70 |
71 |
72 |
--------------------------------------------------------------------------------
/extension/META-INF/manifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/extension/OOoLilyPond/Batch.xba:
--------------------------------------------------------------------------------
1 |
2 |
3 | ' Subs and Functions related with batch processing of all existing OLy objects in a Writer document
4 |
5 | Option Explicit
6 |
7 | Private iAskDialogReturnValue As Integer
8 |
9 |
10 | Function ConfirmBatchOperation () As Integer
11 | ' 1 = Abort
12 | ' 2 = No
13 | ' 3 = Yes
14 | ' 4 = All
15 |
16 | iAskDialogReturnValue = 2
17 | oAskDialog.Execute()
18 | ConfirmBatchOperation = iAskDialogReturnValue
19 | End Function
20 |
21 |
22 | Sub AskDlgAbortButton ()
23 | iAskDialogReturnValue = 1
24 | oAskDialog.EndExecute()
25 | End Sub
26 |
27 | Sub AskDlgNoButton ()
28 | iAskDialogReturnValue = 2
29 | oAskDialog.EndExecute()
30 | End Sub
31 |
32 | Sub AskDlgYesButton ()
33 | iAskDialogReturnValue = 3
34 | oAskDialog.EndExecute()
35 | End Sub
36 |
37 | Sub AskDlgAllButton ()
38 | iAskDialogReturnValue = 4
39 | oAskDialog.EndExecute()
40 | End Sub
41 |
42 |
43 | Sub PerformBatchProcessing ()
44 | ' This function is called when the "Start" button in the Batch dialog is pressed.
45 | ' It creates a list of all OOoLilyPond objects,
46 | ' checks if they match the search criteria,
47 | ' performs the specified replacements
48 | ' and recompiles them without opening the editor dialog.
49 | Dim oDrawPage As Object
50 | Dim oCurrentObject As Object
51 | Dim oProgressBar As Object
52 | Dim iCount As Integer
53 | Dim i As Integer
54 | Dim iLastObject As Integer
55 |
56 | Dim oGraphic As Object
57 | ' Dim oDocCtrl As Object
58 | Dim oGraphicObjects ()
59 | Dim sIdentifiers ()
60 | Dim sImageNums ()
61 | Dim sCurrentImageNum As String
62 | Dim sCurrentIdentifier As String
63 | Dim iPosInList As Integer
64 | Dim iAnswer As Integer
65 | Dim bAsk As Boolean ' checkbox state from Batch dialog
66 | Dim bCreateBackup As Boolean ' checkbox state from Batch dialog
67 | Dim bSaveConfig As Boolean
68 | Dim sURL As String
69 |
70 |
71 | oBatchDialog.getControl ("Process").setEnable (False) ' avoid multiple button presses
72 |
73 | bSaveConfig = False
74 |
75 | bAsk = CheckBoxStateToBool (oBatchDialog.getControl("bAsk").getState())
76 | if bAsk <> bAskForEachObjectDefault Then
77 | bAskForEachObjectDefault = bAsk
78 | bSaveConfig = True
79 | End If
80 |
81 | bCreateBackup = False
82 | sURL = oDoc.getURL() ' see GetRelativeIncludeStatement ()
83 | If (Not IsNull (sURL)) And Len (sURL) > 0 Then
84 | bCreateBackup = CheckBoxStateToBool (oBatchDialog.getControl("CreateBackup").getState())
85 | If bCreateBackup <> bCreateBackupDefault Then
86 | bCreateBackupDefault = bCreateBackup
87 | bSaveConfig = True
88 | End If
89 | End If
90 |
91 | bKeepCrop = CheckBoxStateToBool (oBatchDialog.getControl("bKeepCrop").getState())
92 | if bKeepCrop <> bBatchKeepCropDefault Then
93 | bBatchKeepCropDefault = bKeepCrop
94 | bSaveConfig = True
95 | End If
96 |
97 | If bSaveConfig Then SaveConfig()
98 |
99 | If bCreateBackup Then CreateBackup ("_" & TimeStamp ())
100 |
101 | oBatchDialog.EndExecute()
102 | oAskDialog = createUnoDialog (DialogLibraries.GetByName (constOLyLibraryName).GetByName("GUI_Ask"))
103 | ReadDialogStringsFromVar (oAskDialog, sAskDialogStrings, "")
104 |
105 | oDrawPage = oDoc.DrawPage
106 | iCount = oDrawPage.Count
107 | oGraphicObjects = DimArray (iCount)
108 | sIdentifiers = DimArray (iCount)
109 | sImageNums = DimArray (iCount)
110 | iLastObject = -1
111 | ' Prepare list of objects to be processed:
112 | For i = 0 to iCount - 1
113 | oCurrentObject = oDrawPage.getByIndex (i)
114 | If IsOLyObject (oCurrentObject) Then
115 | sCurrentIdentifier = GetObjectIdentifier (oCurrentObject)
116 | If sCurrentIdentifier = "" Then ' not a multi-image object
117 | iLastObject = iLastObject + 1
118 | oGraphicObjects (iLastObject) = oCurrentObject
119 | sIdentifiers (iLastObject) = ""
120 | sImageNums (iLastObject) = ""
121 | Else ' multi-image object
122 | sCurrentImageNum = GetObjectImageNum (oCurrentObject)
123 | iPosInList = PosInArray (sIdentifiers, sCurrentIdentifier, iLastObject)
124 | If iPosInList = -1 Then ' array does not yet contain a sibling
125 | iLastObject = iLastObject + 1
126 | oGraphicObjects (iLastObject) = oCurrentObject
127 | sIdentifiers (iLastObject) = sCurrentIdentifier
128 | sImageNums (iLastObject) = sCurrentImageNum
129 | Else ' array already contains a sibling
130 | ' Dim sImNum As String ' obsolete, just for debugging
131 | ' sImNum = sImageNums (iPosInList)
132 | If HasHigherValue (sImageNums (iPosInList), sCurrentImageNum) Then
133 | oGraphicObjects (iPosInList) = oCurrentObject ' replace objects with higher ImageNum
134 | sIdentifiers (iPosInList) = sCurrentIdentifier
135 | sImageNums (iPosInList) = sCurrentImageNum
136 | End If
137 | End If
138 | End If
139 | End If
140 | next i
141 |
142 | oProgressBar = oDocCtrl.StatusIndicator
143 | oProgressBar.start (oMessages.getPropertyValue ("sMsgBatchProcessing"), iLastObject + 1)
144 | If bAsk Then
145 | iAnswer = 2 ' "No"
146 | iAskDialogReturnValue = 2
147 | Else
148 | iAnswer = 4 ' "All"
149 | iAskDialogReturnValue = 4
150 | End If
151 |
152 | ' now process objects from the list:
153 | For i = 0 to iLastObject
154 |
155 | oProgressBar.setValue (i + 1)
156 | oProgressBar.setText (oMessages.getPropertyValue ("sMsgBatchProcessing") & i + 1 & "/" & iLastObject + 1)
157 |
158 | ' Objects from OLy versions prior to 1.0.0 have no Custom 3 and 4 values.
159 | ' This might only be a problem when an existing template is changed to use these fields.
160 | ' To be on the safe side, provide the default values from the template:
161 | bUseDefaultCustom3 = True
162 | bUseDefaultCustom4 = True
163 |
164 | oCurrentGraphicObject = oGraphicObjects (i) ' global variable
165 | oDocCtrl.select (oCurrentGraphicObject)
166 | If ReadSelectionObject () Then ' create Cursor and read Attributes if Object is selected
167 | ' Now we know which template to use
168 | ReadTemplate (True)
169 | ' if bUseDefaultCustom3 or 4 are still False, fill in the default values:
170 | if bUseDefaultCustom3 Then sCustom3 = sDefaultCustom3
171 | if bUseDefaultCustom4 Then sCustom4 = sDefaultCustom4
172 |
173 | bSaveAsSeparateImages = bHasSeparateImages
174 | If oBatchDialog.getControl("SeparateImages_Yes").getState() Then bSaveAsSeparateImages = True
175 | If oBatchDialog.getControl("SeparateImages_No").getState() Then bSaveAsSeparateImages = False
176 | bIncludeTemplate = bContainsTemplate
177 | If oBatchDialog.getControl("IncludeTemplate_Yes").getState() Then bIncludeTemplate = True
178 | If oBatchDialog.getControl("IncludeTemplate_No").getState() Then bIncludeTemplate = False
179 |
180 | If MeetsCondition ("A") And MeetsCondition ("B") Then
181 | If (iAnswer = 4) And (iAskDialogReturnValue = 3) Then iAnswer = 3 ' Leave a chance to abort if errors have occured
182 | If iAnswer < 4 Then iAnswer = ConfirmBatchOperation ()
183 | If iAnswer < 2 Then Exit For ' "Abort"
184 | If iAnswer > 2 Then ' "Yes" or "All"
185 | PerformReplacement ("A")
186 | PerformReplacement ("B")
187 | Make (true)
188 | End If
189 | End If
190 | End If
191 | next i
192 | oProgressBar.end()
193 | End Sub
194 |
195 |
196 | Function MeetsCondition (sID As String) As Boolean
197 | ' Indicates if the current OLy object meets the condition set in a rule in the Batch dialogue.
198 | ' sID = "A": rule 1
199 | ' sID = "B": rule 2
200 |
201 | Dim sSearchField As String
202 |
203 | On Error Goto ErrorHandler ' might happen if an argument for getControl() is invalid
204 |
205 | If oBatchDialog.getControl ("NoCondition_" & sID).getState() Then
206 | MeetsCondition = True
207 | Exit Function
208 | End If
209 |
210 | sSearchField = ""
211 |
212 | Select Case oBatchDialog.getControl ("sSearchField_" & sID).getText()
213 | Case "Code"
214 | sSearchField = sCode
215 | Case "Staff Size"
216 | If bStaffSizeFieldExists Then sSearchField = sStaffSize
217 | Case "Line Width"
218 | If bLineWidthFieldExists Then sSearchField = sLineWidth
219 | Case "Custom 1"
220 | If bCustom1FieldExists Then sSearchField = sCustom1
221 | Case "Custom 2"
222 | If bCustom2FieldExists Then sSearchField = sCustom2
223 | Case "Custom 3"
224 | If bCustom3FieldExists Then sSearchField = sCustom3
225 | Case "Custom 4"
226 | If bCustom4FieldExists Then sSearchField = sCustom4
227 | Case "Template name"
228 | sSearchField = sTemplate
229 | Case "Option 1"
230 | If bOption1FieldExists Then sSearchField = LyBoolToString (bOption1)
231 | Case "Option 2"
232 | If bOption2FieldExists Then sSearchField = LyBoolToString (bOption2)
233 | Case "Option 3"
234 | If bOption3FieldExists Then sSearchField = LyBoolToString (bOption3)
235 | Case "Option 4"
236 | If bOption4FieldExists Then sSearchField = LyBoolToString (bOption4)
237 | Case "(Staff Size label)"
238 | If bStaffSizeLabelExists Then sSearchField = sStaffSizeLabel
239 | Case "(Line Width label)"
240 | If bLineWidthLabelExists Then sSearchField = sLineWidthLabel
241 | Case "(Custom 1 label)"
242 | If bCustom1LabelExists Then sSearchField = sCustom1Label
243 | Case "(Custom 2 label)"
244 | If bCustom2LabelExists Then sSearchField = sCustom2Label
245 | Case "(Custom 3 label)"
246 | If bCustom3LabelExists Then sSearchField = sCustom3Label
247 | Case "(Custom 4 label)"
248 | If bCustom4LabelExists Then sSearchField = sCustom4Label
249 | Case "(Option 1 label)"
250 | If bOption1LabelExists Then sSearchField = sOption1Label
251 | Case "(Option 2 label)"
252 | If bOption2LabelExists Then sSearchField = sOption2Label
253 | Case "(Option 3 label)"
254 | If bOption3LabelExists Then sSearchField = sOption3Label
255 | Case "(Option 4 label)"
256 | If bOption4LabelExists Then sSearchField = sOption4Label
257 | End Select
258 |
259 | If oBatchDialog.getControl ("ConditionContains_" & sID).getState() Then
260 | Dim iSearchMode As Integer
261 | iSearchMode = 0
262 | If CheckBoxStateToBool (oBatchDialog.getControl ("IgnoreCase_" & sID).getState()) Then iSearchMode = 1
263 | MeetsCondition = (InStr (1, sSearchField, oBatchDialog.getControl ("sSearch_" & sID).getText(), iSearchMode) > 0)
264 | Exit Function
265 | End If
266 |
267 | If oBatchDialog.getControl ("ConditionIs_" & sID).getState() Then
268 | MeetsCondition = (sSearchField = oBatchDialog.getControl ("sSearch_" & sID).getText())
269 | Exit Function
270 | End If
271 |
272 | ErrorHandler:
273 | MeetsCondition = False
274 | End Function
275 |
276 |
277 | Sub PerformReplacement (sID As String)
278 | ' Perform the changes set in a rule in the Batch dialogue.
279 | ' sID = "A": rule 1
280 | ' sID = "B": rule 2
281 |
282 | Dim sReplaceString As String
283 |
284 | On Error Goto ErrorHandler ' might happen if an argument for getControl() is invalid
285 |
286 | If oBatchDialog.getControl ("NoChange_" & sID).getState() Then
287 | Exit Sub
288 | End If
289 |
290 | If oBatchDialog.getControl ("SetUseDefault_" & sID).getState() Then
291 | Select Case oBatchDialog.getControl ("sSearchField_" & sID).getText()
292 | Case "Code"
293 | sCode = sDefaultCode
294 | bUseDefaultCode = True
295 | Case "Staff Size"
296 | sStaffSize = sDefaultStaffSize
297 | bUseDefaultStaffSize = True
298 | Case "Line Width"
299 | sLineWidth = sDefaultLineWidth
300 | bUseDefaultLineWidth = True
301 | Case "Custom 1"
302 | sCustom1 = sDefaultCustom1
303 | bUseDefaultCustom1 = True
304 | Case "Custom 2"
305 | sCustom2 = sDefaultCustom2
306 | bUseDefaultCustom2 = True
307 | Case "Custom 3"
308 | sCustom3 = sDefaultCustom3
309 | bUseDefaultCustom3 = True
310 | Case "Custom 4"
311 | sCustom4 = sDefaultCustom4
312 | bUseDefaultCustom4 = True
313 | Case "Template name"
314 | sTemplate = sWriterDefaultTemplate
315 | ReadTemplate (True)
316 | Case "Option 1"
317 | If bOption1FieldExists Then bOption1 = bDefaultOption1
318 | Case "Option 2"
319 | If bOption2FieldExists Then bOption2 = bDefaultOption2
320 | Case "Option 3"
321 | If bOption3FieldExists Then bOption3 = bDefaultOption3
322 | Case "Option 4"
323 | If bOption4FieldExists Then bOption4 = bDefaultOption4
324 | End Select
325 | Exit Sub
326 | End If
327 |
328 | sReplaceString = oBatchDialog.getControl ("sReplace_" & sID).getText()
329 |
330 | If oBatchDialog.getControl ("ReplaceWholeField_" & sID).getState() Then
331 | Select Case oBatchDialog.getControl ("sSearchField_" & sID).getText()
332 | Case "Code"
333 | sCode = sReplaceString
334 | bUseDefaultCode = False
335 | Case "Staff Size"
336 | sStaffSize = sReplaceString
337 | bUseDefaultStaffSize = False
338 | Case "Line Width"
339 | sLineWidth = sReplaceString
340 | bUseDefaultLineWidth = False
341 | Case "Custom 1"
342 | sCustom1 = sReplaceString
343 | bUseDefaultCustom1 = False
344 | Case "Custom 2"
345 | sCustom2 = sReplaceString
346 | bUseDefaultCustom2 = False
347 | Case "Custom 3"
348 | sCustom3 = sReplaceString
349 | bUseDefaultCustom3 = False
350 | Case "Custom 4"
351 | sCustom4 = sReplaceString
352 | bUseDefaultCustom4 = False
353 | Case "Template name"
354 | sTemplate = sReplaceString
355 | ReadTemplate (True)
356 | Case "Option 1"
357 | If bOption1FieldExists Then bOption1 = LyStringToBool (sReplaceString)
358 | Case "Option 2"
359 | If bOption2FieldExists Then bOption2 = LyStringToBool (sReplaceString)
360 | Case "Option 3"
361 | If bOption3FieldExists Then bOption3 = LyStringToBool (sReplaceString)
362 | Case "Option 4"
363 | If bOption4FieldExists Then bOption4 = LyStringToBool (sReplaceString)
364 | End Select
365 | Exit Sub
366 | End If
367 |
368 | Dim ISearchMode As Integer
369 | iSearchMode = 0
370 | If CheckBoxStateToBool (oBatchDialog.getControl ("IgnoreCase_" & sID).getState()) Then iSearchMode = 1
371 |
372 | If oBatchDialog.getControl ("ReplaceSearchedString_" & sID).getState() Then
373 | Select Case oBatchDialog.getControl ("sSearchField_" & sID).getText()
374 | Case "Code"
375 | ReplaceSubStrings (sCode, oBatchDialog.getControl ("sSearch_" & sID).getText(), sReplaceString, iSearchMode)
376 | bUseDefaultCode = False
377 | Case "Staff Size"
378 | ReplaceSubStrings (sStaffSize, oBatchDialog.getControl ("sSearch_" & sID).getText(), sReplaceString, iSearchMode)
379 | bUseDefaultStaffSize = False
380 | Case "Line Width"
381 | ReplaceSubStrings (sLineWidth, oBatchDialog.getControl ("sSearch_" & sID).getText(), sReplaceString, iSearchMode)
382 | bUseDefaultLineWidth = False
383 | Case "Custom 1"
384 | ReplaceSubStrings (sCustom1, oBatchDialog.getControl ("sSearch_" & sID).getText(), sReplaceString, iSearchMode)
385 | bUseDefaultCustom1 = False
386 | Case "Custom 2"
387 | ReplaceSubStrings (sCustom2, oBatchDialog.getControl ("sSearch_" & sID).getText(), sReplaceString, iSearchMode)
388 | bUseDefaultCustom2 = False
389 | Case "Custom 3"
390 | ReplaceSubStrings (sCustom3, oBatchDialog.getControl ("sSearch_" & sID).getText(), sReplaceString, iSearchMode)
391 | bUseDefaultCustom3 = False
392 | Case "Custom 4"
393 | ReplaceSubStrings (sCustom4, oBatchDialog.getControl ("sSearch_" & sID).getText(), sReplaceString, iSearchMode)
394 | bUseDefaultCustom4 = False
395 | Case "Template name"
396 | ReplaceSubStrings (sTemplate, oBatchDialog.getControl ("sSearch_" & sID).getText(), sReplaceString, iSearchMode)
397 | ReadTemplate (True)
398 | ' "Option 1" ... "Option 4" not available
399 | End Select
400 | Exit Sub
401 | End If
402 |
403 | ErrorHandler:
404 | End Sub
405 |
406 |
407 | Sub GrayOutBatchOptions_A
408 | ' Is called when Search field has been changed in Rule 1
409 | GrayOutBatchOptions ("A")
410 | End Sub
411 |
412 | Sub GrayOutBatchOptions_B
413 | ' Is called when Search field has been changed in Rule 2
414 | GrayOutBatchOptions ("B")
415 | End Sub
416 |
417 |
418 | Sub GrayOutBatchOptions (sID As String)
419 | ' Grey out the radio buttons in the Batch dialogue that should not be available
420 | ' sID = "A": rule 1
421 | ' sID = "B": rule 2
422 |
423 | Dim sControlStr As String
424 |
425 | On Error GoTo ErrorHandler
426 | sControlStr = Left (oBatchDialog.getControl ("sSearchField_" & sID).getText(), 1)
427 | If sControlStr = "(" Then ' contains "...label"
428 | oBatchDialog.getControl("NoChange_" & sID).setState (True)
429 | oBatchDialog.getControl("SetUseDefault_" & sID).setEnable (False)
430 | oBatchDialog.getControl("ReplaceWholeField_" & sID).setEnable (False)
431 | oBatchDialog.getControl("ReplaceSearchedString_" & sID).setEnable (False)
432 | oBatchDialog.getControl("ConditionContains_" & sID).setEnable (True)
433 | Else ' nothing with "...label"
434 | oBatchDialog.getControl("SetUseDefault_" & sID).setEnable (True)
435 | oBatchDialog.getControl("ReplaceWholeField_" & sID).setEnable (True)
436 | If sControlStr = "O" Then ' begins with "Option..."
437 | If oBatchDialog.getControl("ConditionContains_" & sID).getState () Then
438 | oBatchDialog.getControl("ConditionIs_" & sID).setState (True)
439 | End If
440 | If oBatchDialog.getControl("ReplaceSearchedString_" & sID).getState () Then
441 | oBatchDialog.getControl("ReplaceWholeField_" & sID).setState (True)
442 | End If
443 | oBatchDialog.getControl("ConditionContains_" & sID).setEnable (False)
444 | oBatchDialog.getControl("ReplaceSearchedString_" & sID).setEnable (False)
445 | Else ' not an "Option..." checkbox
446 | oBatchDialog.getControl("ConditionContains_" & sID).setEnable (True)
447 | oBatchDialog.getControl("ReplaceSearchedString_" & sID).setEnable (Len (oBatchDialog.getControl ("sSearch_" & sID).getText()) > 0)
448 | ' True if sSearch... contains at least one character
449 | End If
450 | End If
451 | ErrorHandler:
452 | End Sub
453 |
454 |
455 |
--------------------------------------------------------------------------------
/extension/OOoLilyPond/GUI_Ask.xdl:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/extension/OOoLilyPond/GUI_Batch.xdl:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 |
110 |
111 |
112 |
113 |
114 |
115 |
116 |
117 |
118 |
119 |
120 |
121 |
122 |
123 |
124 |
125 |
126 |
--------------------------------------------------------------------------------
/extension/OOoLilyPond/GUI_Config.xdl:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 |
110 |
111 |
112 |
113 |
114 |
115 |
116 |
117 |
118 |
119 |
120 |
121 |
122 |
123 |
124 |
125 |
126 |
127 |
128 |
129 |
--------------------------------------------------------------------------------
/extension/OOoLilyPond/GUI_Editor.xdl:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 |
110 |
111 |
112 |
113 |
114 |
115 |
116 |
117 |
118 |
119 |
120 |
121 |
122 |
123 |
124 |
125 |
126 |
127 |
128 |
129 |
130 |
131 |
132 |
133 |
134 |
135 |
136 |
137 |
138 |
139 |
140 |
141 |
142 |
143 |
144 |
145 |
146 |
147 |
148 |
149 |
150 |
151 |
152 |
153 |
154 |
155 |
156 |
157 |
158 |
--------------------------------------------------------------------------------
/extension/OOoLilyPond/GUI_Out.xdl:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/extension/OOoLilyPond/GUI_Tmpl.xdl:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/extension/OOoLilyPond/Vars.xba:
--------------------------------------------------------------------------------
1 |
2 |
3 | Option Explicit
4 |
5 | ' Constants for general file names, will be defined in PrivateConstants()
6 | Private constOLyFileName As String ' beginning of File Name for temporary files
7 | Private constOLyLibraryName As String ' name of the macro library among the OpenOffice / LibreOffice macros
8 | Private constOLyWinConfigFileName As String ' Config file name for Windows version
9 | Private constOLyWinConfigFolderName As String ' Folder name where Config file and the Template subfolder are located (Windows version)
10 |
11 | Private oMessages As Variant ' PropertyBag for all message box strings and stuff related to them
12 |
13 | Private sEditorDialogStrings As String
14 | Private sTemplateDialogStrings As String
15 | Private sConfigDialogStrings As String
16 | Private sOutputDialogStrings As String
17 | Private sBatchDialogStrings As String
18 | Private sBatchDialogRuleSetStrings As String
19 | Private sAskDialogStrings As String
20 |
21 | ' Paths
22 | Private sConfigFile As String
23 | Private sLilyPondExecutable As String
24 | Private sTemplatePath As String
25 | Private sLanguagePath As String
26 | Private sExtEditorExecutable As String
27 | Private sIncludeStatement As String
28 | Private sEditorFontName As String
29 | Private sEditorFontSize As String
30 | Private sPdfToSvgPrologue As String
31 | Private sPdfToSvgEpilogue As String
32 | Private sTmpPath As String
33 | Private sTempLyFilePath As String ' Path for tremp. file sent to external editor (sTmpPath or document path)
34 | Private bTempLyFileCreated As Boolean
35 |
36 | ' Settings
37 | Private sFormat As String
38 | Private sExtension As String ' needed because sFormat = "pdf to svg" means sExtension = "svg"
39 | Private iGraphicDPI As Integer
40 | Private bTransparentBackground As Boolean
41 | Private sWriterDefaultTemplate As String
42 | Private sImpressDefaultTemplate As String
43 | Private iWriterDefaultAnchor As Integer
44 | Private iWriterDefaultWrap As Integer
45 | Private bIgnoreWarnings As Boolean
46 | Private bWriterInsertViaClipboard As Boolean
47 | Private bImpressInsertViaClipboard As Boolean
48 | Private bWriterKeepCrop As Boolean
49 | Private bImpressKeepCrop As Boolean
50 | Private sLanguageFileName As String
51 | Private bKeepTempFiles As Boolean
52 | Private bTempLyFileInDocFolder As Boolean ' save temp. LY file for ext. editor into LO document folder?
53 | Private bIncludeTemplate As Boolean
54 | Private bContainsTemplate As Boolean
55 | Private bTemplateSaved As Boolean
56 | Private sTemplateLocationLabel As String ' <> "" if template not in standard template folder
57 | Private sTemplateLocationHelptext As String
58 | Private bNewObjectsAsSeparateImages As Boolean ' Config Dialog: default for new objects
59 | Private bHasSeparateImages As Boolean ' selected object consists of separate images?
60 | Private bSaveAsSeparateImages As Boolean ' save current snippet as separate images?
61 | Private iFrom As Integer ' if > 0: first image to be inserted
62 | Private iTo As Integer ' if > 0: last image to be inserted
63 | Private bUseSecondSvgParam As Boolean ' insert "filename.svg" into PdfToSvg command or not?
64 | Private bAskForEachObjectDefault As Boolean ' remembered state for "Ask for each object" from Batch dialog
65 | Private bCreateBackupDefault As Boolean ' remembered state for "Create backup" from Batch dialog
66 | Private bBatchKeepCropDefault As Boolean ' remembered state for "Keep size & crop settings" from Batch dialog
67 |
68 |
69 | ' Environment
70 | Private sOSType As String
71 | Private bInWriter As Boolean
72 | Private sLilyPondVersionMajor As String
73 | Private sLilyPondVersionMinor As String
74 |
75 | ' Dialog Objects
76 | Private oEditorDialog As Object ' OOoLilyPond Editor Dialog (Main Dialog)
77 | Private oTemplateEditorDialog As Object ' Template Editor Dialog
78 | Private oConfigDialog As Object ' Configuration Dialog
79 | Private oOutputDialog As Object ' LilyPond Output Dialog
80 | Private oBatchDialog As Object ' Batch Processing Dialog
81 | Private oAskDialog As Object ' Confirmation Dialog during batch processing
82 |
83 | ' OOoLilyPond object data
84 | Private sTemplate As String ' The name of the template used
85 | Private sCode As String ' The LilyPond code snippet
86 | Private sLineWidth As String
87 | Private sStaffSize As String
88 | Private sCustom1 As String
89 | Private sCustom2 As String
90 | Private sCustom3 As String
91 | Private sCustom4 As String
92 | Private bOption1 As Boolean
93 | Private bOption2 As Boolean
94 | Private bOption3 As Boolean
95 | Private bOption4 As Boolean
96 |
97 | ' code segments to be switched on/off by bOption1 ... bOption4
98 | Private sOption1True As String
99 | Private sOption2True As String
100 | Private sOption3True As String
101 | Private sOption4True As String
102 | Private sOption1False As String
103 | Private sOption2False As String
104 | Private sOption3False As String
105 | Private sOption4False As String
106 |
107 | ' OOoLilyPond object default data
108 | Private sDefaultCode As String
109 | Private sDefaultLineWidth As String
110 | Private sDefaultStaffSize As String
111 | Private sDefaultCustom1 As String
112 | Private sDefaultCustom2 As String
113 | Private sDefaultCustom3 As String
114 | Private sDefaultCustom4 As String
115 | Private bDefaultOption1 As Boolean
116 | Private bDefaultOption2 As Boolean
117 | Private bDefaultOption3 As Boolean
118 | Private bDefaultOption4 As Boolean
119 |
120 | Private sDefaultLineWidthLabel As String
121 | Private sDefaultStaffSizeLabel As String
122 | Private sDefaultCustom1Label As String
123 | Private sDefaultCustom2Label As String
124 | Private sDefaultCustom3Label As String
125 | Private sDefaultCustom4Label As String
126 | Private sDefaultOption1Label As String
127 | Private sDefaultOption2Label As String
128 | Private sDefaultOption3Label As String
129 | Private sDefaultOption4Label As String
130 |
131 | Private sLineWidthLabel As String
132 | Private sStaffSizeLabel As String
133 | Private sCustom1Label As String
134 | Private sCustom2Label As String
135 | Private sCustom3Label As String
136 | Private sCustom4Label As String
137 | Private sOption1Label As String
138 | Private sOption2Label As String
139 | Private sOption3Label As String
140 | Private sOption4Label As String
141 |
142 | Private iAnchor As Integer
143 | Private iOriginalAnchor As Integer
144 | Private iAnchorPageNo As Integer
145 | Private iWrap As Integer
146 |
147 | ' Use Default Flags
148 | Private bUseDefaultCode As Boolean
149 | Private bUseDefaultStaffSize As Boolean
150 | Private bUseDefaultLineWidth As Boolean
151 | Private bUseDefaultCustom1 As Boolean
152 | Private bUseDefaultCustom2 As Boolean
153 | Private bUseDefaultCustom3 As Boolean
154 | Private bUseDefaultCustom4 As Boolean
155 | Private bUseLineWidthFromTemplate As String
156 | Private bUseStaffSizeFromTemplate As String
157 |
158 | ' Code related strings
159 | Private sTemplateCode As String ' String containing the template
160 | Private sLanguageCode As String ' String containing the language file
161 | Private sLilyPondCode As String ' The input sent to LilyPond
162 | Private iCodeStartPos As Integer ' Position of Code Snipped within sLilyPondCode
163 | Private iLineWidthStartPos As Integer
164 | Private iStaffSizeStartPos As Integer
165 | Private iCustom1StartPos As Integer
166 | Private iCustom2StartPos As Integer
167 | Private iCustom3StartPos As Integer
168 | Private iCustom4StartPos As Integer
169 |
170 | ' Selected shape's variables...
171 | Private oShapeSize As Object
172 | Private oShapePosition As Object
173 | Private oShapeCrop As Object
174 | Private bShapeIsSelected As Boolean
175 | Private bKeepCrop As Boolean
176 |
177 | ' SimpleFileAccess Service
178 | Private oFileAccess As Object
179 |
180 | ' Error Messages
181 | Private iErrRow(1000) As Integer 'row of error
182 | Private iErrCol(1000) As Integer 'column of error
183 | Private iErrClass(1000) As Integer '1 = warning, 2 = error
184 | Private sErrMsg(1000) As String 'error messages
185 | Private lErrMsgHighlightColor As Long ' background color for error message label when highlighted
186 | Private iNErr As Integer 'number of errors
187 | Private iErrNum As Integer 'number of error actually displayed
188 | Private sLanguageEntryErrors As String ' collection of errors while reading a language file
189 | Private iLanguageEntryErrors As Integer ' number of errors while reading a language file
190 |
191 |
192 | ' Flags used for graying out the input fields
193 | Private bLineWidthFieldExists As Boolean
194 | Private bStaffSizeFieldExists As Boolean
195 | Private bCustom1FieldExists As Boolean
196 | Private bCustom2FieldExists As Boolean
197 | Private bCustom3FieldExists As Boolean
198 | Private bCustom4FieldExists As Boolean
199 | Private bOption1FieldExists As Boolean
200 | Private bOption2FieldExists As Boolean
201 | Private bOption3FieldExists As Boolean
202 | Private bOption4FieldExists As Boolean
203 |
204 | Private bLineWidthLabelExists As Boolean
205 | Private bStaffSizeLabelExists As Boolean
206 | Private bCustom1LabelExists As Boolean
207 | Private bCustom2LabelExists As Boolean
208 | Private bCustom3LabelExists As Boolean
209 | Private bCustom4LabelExists As Boolean
210 | Private bOption1LabelExists As Boolean
211 | Private bOption2LabelExists As Boolean
212 | Private bOption3LabelExists As Boolean
213 | Private bOption4LabelExists As Boolean
214 |
215 | ' some global objects:
216 | Private oDoc As Object ' ThisComponent
217 | Private oDocCtrl As Object ' ThisComponent.CurrentController
218 | ' Private oSelection As Object
219 | Private oCurrentGraphicObject As Object
220 | Private oCurrentCursor As Object
221 |
222 | Private sGlobalIdentifier As String
223 | Private sGlobalImageNum As String
224 |
225 | ' PrivateConstants do not exist therefore use variables instead
226 | ' and set the values by calling this function in Main().
227 | Private iMsgBox_O, iMsgBox_OC, iMsgBox_AR, iMsgBox_YNC, iMsgBox_YN, iMsgBox_RC, iMsgBox_S, iMsgBox_Q, iMsgBox_E, iMsgBox_I, iMsgBox_1, iMsgBox_2, iMsgBox_3 As Integer
228 | Private iAnswer_OK, iAnswer_Cancel, iAnswer_Abort, iAnswer_Retry, iAnswer_Ignore, iAnswer_Yes, iAnswer_No
229 | Private iMaxLanguageEntryError As Integer
230 | Sub PrivateConstants()
231 | ' MsgBox Options
232 | iMsgBox_O = 0 ' Display OK button only.
233 | iMsgBox_OC = 1 ' Display OK and Cancel buttons.
234 | iMsgBox_AR = 2 ' Display Abort, Retry, and Ignore buttons.
235 | iMsgBox_YNC = 3 ' Display Yes, No and Cancel buttons.
236 | iMsgBox_YN = 4 ' Display Yes and No buttons.
237 | iMsgBox_RC = 5 ' Display Retry and Cancel buttons.
238 | iMsgBox_S = 16 ' Add the Stop icon to the dialog.
239 | iMsgBox_Q = 32 ' Add the Question icon to the dialog.
240 | iMsgBox_E = 48 ' Add the Exclamation icon to the dialog.
241 | iMsgBox_I = 64 ' Add the Information icon to the dialog.
242 | iMsgBox_1 = 128 ' First button in the dialog as default button.
243 | iMsgBox_2 = 256 ' Second button in the dialog as default button.
244 | iMsgBox_3 = 512 ' Third button in the dialog as default button.
245 | ' MsgBox Answers
246 | iAnswer_OK=1
247 | iAnswer_Cancel=2
248 | iAnswer_Abort=3
249 | iAnswer_Retry=4
250 | iAnswer_Ignore=5
251 | iAnswer_Yes=6
252 | iAnswer_No=7
253 |
254 | ' Constants for general file names:
255 | ' constOLyFileName = "LoLilyPond" ' beginning of File Name for temporary files
256 | constOLyFileName = "OOoLilyPond" ' beginning of File Name for temporary files
257 | constOLyLibraryName = "OOoLilyPond" ' name of the macro library among the OpenOffice / LibreOffice macros
258 | ' constOLyWinConfigFileName = "lolilypond-config" ' Config file name for Windows version
259 | constOLyWinConfigFileName = "ooolilypond-config" ' Config file name for Windows version
260 | constOLyWinConfigFolderName = "OOoLilyPond" ' Folder name where Config file and the Template subfolder are located (Windows version)
261 |
262 | iMaxLanguageEntryError = 6 ' maximal number of Language file entry errors to be displayed in message box
263 | lErrMsgHighlightColor = &Hf4b0b0
264 |
265 | End Sub
266 |
267 |
--------------------------------------------------------------------------------
/extension/OOoLilyPond/dialog.xlb:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/extension/OOoLilyPond/script.xlb:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/extension/Office/UI/BaseWindowState.xcu:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
9 |
10 | OOoLilyPond
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/extension/Office/UI/BasicIDEWindowState.xcu:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
9 |
10 | OOoLilyPond
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/extension/Office/UI/CalcWindowState.xcu:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
9 |
10 | OOoLilyPond
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/extension/Office/UI/DrawWindowState.xcu:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
9 |
10 | OOoLilyPond
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/extension/Office/UI/ImpressWindowState.xcu:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
9 |
10 | OOoLilyPond
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/extension/Office/UI/MathWindowState.xcu:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
9 |
10 | OOoLilyPond
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/extension/Office/UI/StartModuleWindowState.xcu:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
9 |
10 | OOoLilyPond
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/extension/Office/UI/WriterWindowState.xcu:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
9 |
10 | OOoLilyPond
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/extension/description.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 | OOoLilyPond
17 |
18 |
19 |
20 | Samuel Hartmann, Klaus Blum et al.
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
--------------------------------------------------------------------------------
/extension/pkg-desc/pkg-description.txt:
--------------------------------------------------------------------------------
1 | OOoLilyPond enables the inclusion of music notation
2 | in OpenOffice.org or LibreOffice Writer, Draw and Impress documents.
3 | The music expression is entered as a text code and then
4 | translated to an image (png, eps or svg) using LilyPond.
5 |
6 | https://github.com/OOoLilyPond
7 | http://lilypond.org
8 |
9 | Copyright (c) 2006-2009 Samuel Hartmann
10 | (samuel_hartmann@users.sourceforge.net)
11 | (c) 2017 Klaus Blum
12 | (ooolilypond@web.de)
13 |
--------------------------------------------------------------------------------
/extension/templates/2.12/Default [SVG -dcrop].ly:
--------------------------------------------------------------------------------
1 | \transpose %{OOoLilyPondCustom1%}c c'%{OOoLilyPondEnd%}
2 | {
3 | %{OOoLilyPondCode%}% For getting started read (copy URL into your web browser):
4 | % https://github.com/openlilylib/LO-ly
5 | % http://lilypond.org/doc/stable/Documentation/learning/simple-notation%
6 | %
7 | % Use the "Custom 1" to transpose your music expression. E. g. try "e a'".
8 |
9 | \key e \major e8 fis gis e fis8 b,4. | e2\fermata \bar "|."
10 | %{OOoLilyPondEnd%}
11 | }
12 |
13 | #(set-global-staff-size #!OOoLilyPondStaffSize!# 20 #!OOoLilyPondEnd!#)
14 | #(define version-seen #t)
15 |
16 | \paper {
17 | ragged-right = ##t
18 | line-width = %{OOoLilyPondLineWidth%}17 \cm%{OOoLilyPondEnd%}
19 |
20 | #(define fonts
21 | (make-pango-font-tree
22 | "TeXGyreSchola" ; adjust this font name according to your needs
23 | "TeXGyreHeros" ; adjust this font name according to your needs
24 | "TeXGyreCursor" ; adjust this font name according to your needs
25 | (/ staff-height pt 20)))
26 | } % Those 3 font families have to be installed on your system
27 |
28 | \layout {
29 | indent = #0
30 | \context {
31 | \Score
32 | \remove "Bar_number_engraver"
33 | }
34 | }
35 |
36 | % %{OOoLilyPondCustom1Label%}Transpose:%{OOoLilyPondEnd%}
--------------------------------------------------------------------------------
/extension/templates/2.12/Default [SVG].ly:
--------------------------------------------------------------------------------
1 | \transpose %{OOoLilyPondCustom1%}c c'%{OOoLilyPondEnd%}
2 | {
3 | %{OOoLilyPondCode%}% For getting started read (copy URL into your web browser):
4 | % https://github.com/openlilylib/LO-ly
5 | % http://lilypond.org/doc/stable/Documentation/learning/simple-notation%
6 |
7 | % Use the "Custom 1" to transpose your music expression. E. g. try "e a'".
8 | % Use the "Custom 2" field for image height of your musical snippet.
9 |
10 | \key e \major e8 fis gis e fis8 b,4. | e2\fermata \bar "|."
11 | %{OOoLilyPondEnd%}
12 | }
13 |
14 | % -------------------------------------------------------
15 |
16 | #(set-global-staff-size #!OOoLilyPondStaffSize!# 20 #!OOoLilyPondEnd!#)
17 | #(define version-seen #t)
18 |
19 | \paper {
20 | paper-width = %{OOoLilyPondLineWidth%}17 \cm%{OOoLilyPondEnd%}
21 | paper-height = %{OOoLilyPondCustom2%}6 \cm%{OOoLilyPondEnd%}
22 | indent = #0
23 | short-indent = \indent
24 | ragged-right = ##t
25 |
26 | left-margin = 0
27 | right-margin = 0
28 | top-margin = 0
29 | bottom-margin = 0
30 | print-page-number = ##f
31 |
32 | page-count = 1
33 |
34 | #(define fonts
35 | (make-pango-font-tree
36 | "TeXGyreSchola" ; adjust this font name according to your needs
37 | "TeXGyreHeros" ; adjust this font name according to your needs
38 | "TeXGyreCursor" ; adjust this font name according to your needs
39 | (/ staff-height pt 20)))
40 | } % Those 3 font families have to be installed on your system
41 |
42 | \header {
43 | tagline = ##f
44 | }
45 |
46 | \layout {
47 | \context {
48 | \Score
49 | \remove "Bar_number_engraver"
50 | }
51 | }
52 |
53 | % %{OOoLilyPondCustom1Label%}Transpose:%{OOoLilyPondEnd%}
54 | % %{OOoLilyPondCustom2Label%}Image height:%{OOoLilyPondEnd%}
--------------------------------------------------------------------------------
/extension/templates/2.12/Default.ly:
--------------------------------------------------------------------------------
1 | \transpose %{OOoLilyPondCustom1%}c c'%{OOoLilyPondEnd%}
2 | {
3 | %{OOoLilyPondCode%}% For getting started read (copy URL into your web browser):
4 | % https://github.com/openlilylib/LO-ly
5 | % http://lilypond.org/doc/stable/Documentation/learning/simple-notation%
6 | %
7 | % Use the "Custom 1" to transpose your music expression. E. g. try "e a'".
8 |
9 | \key e \major e8 fis gis e fis8 b,4. | e2\fermata \bar "|."
10 | %{OOoLilyPondEnd%}
11 | }
12 |
13 | \include "lilypond-book-preamble.ly"
14 | #(set-global-staff-size #!OOoLilyPondStaffSize!# 20 #!OOoLilyPondEnd!#)
15 |
16 | \paper {
17 | ragged-right = ##t
18 | line-width = %{OOoLilyPondLineWidth%}17 \cm%{OOoLilyPondEnd%}
19 | }
20 |
21 | \layout {
22 | indent = #0
23 | \context {
24 | \Score
25 | \remove "Bar_number_engraver"
26 | }
27 | }
28 |
29 | % %{OOoLilyPondCustom1Label%}Transpose:%{OOoLilyPondEnd%}
--------------------------------------------------------------------------------
/extension/templates/2.12/Deutsch [SVG -dcrop].ly:
--------------------------------------------------------------------------------
1 | \language "deutsch"
2 | \transpose %{OOoLilyPondCustom1%}c c'%{OOoLilyPondEnd%}
3 | {
4 | %{OOoLilyPondCode%}% Hilfen zum Einstieg (URL in Web-Browser kopieren):
5 | % https://github.com/openlilylib/LO-ly (Englisch)
6 | % http://lilypond.org/doc/stable/Documentation/learning/simple-notation%
7 |
8 | \key e \major e8 fis gis e fis h,4. | e2\fermata \bar "|."
9 | %{OOoLilyPondEnd%}
10 | }
11 |
12 | #(set-global-staff-size #!OOoLilyPondStaffSize!# 20 #!OOoLilyPondEnd!#)
13 | #(define version-seen #t)
14 |
15 | \paper {
16 | ragged-right = ##t
17 | line-width = %{OOoLilyPondLineWidth%}17 \cm%{OOoLilyPondEnd%}
18 |
19 | #(define fonts
20 | (make-pango-font-tree
21 | "TeXGyreSchola" ; adjust this font name according to your needs
22 | "TeXGyreHeros" ; adjust this font name according to your needs
23 | "TeXGyreCursor" ; adjust this font name according to your needs
24 | (/ staff-height pt 20)))
25 | } % Those 3 font families have to be installed on your system
26 |
27 | \layout {
28 | indent = #0
29 | \context {
30 | \Score
31 | \remove "Bar_number_engraver"
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/extension/templates/2.12/Deutsch [SVG].ly:
--------------------------------------------------------------------------------
1 | \language "deutsch"
2 | \transpose %{OOoLilyPondCustom1%}c c'%{OOoLilyPondEnd%}
3 | {
4 | %{OOoLilyPondCode%}% Hilfen zum Einstieg (URL in Web-Browser kopieren):
5 | % https://github.com/openlilylib/LO-ly (Englisch)
6 | % http://lilypond.org/doc/stable/Documentation/learning/simple-notation%
7 |
8 | \key e \major e8 fis gis e fis h,4. | e2\fermata \bar "|."
9 | %{OOoLilyPondEnd%}
10 | }
11 |
12 | % -------------------------------------------------------
13 |
14 | #(set-global-staff-size #!OOoLilyPondStaffSize!# 20 #!OOoLilyPondEnd!#)
15 | #(define version-seen #t)
16 |
17 | \paper {
18 | paper-width = %{OOoLilyPondLineWidth%}17 \cm%{OOoLilyPondEnd%}
19 | paper-height = %{OOoLilyPondCustom2%}6 \cm%{OOoLilyPondEnd%}
20 | indent = #0
21 | short-indent = \indent
22 | ragged-right = ##t
23 |
24 | left-margin = 0
25 | right-margin = 0
26 | top-margin = 0
27 | bottom-margin = 0
28 | print-page-number = ##f
29 |
30 | page-count = 1
31 |
32 | #(define fonts
33 | (make-pango-font-tree
34 | "TeXGyreSchola" ; hier den Namen der Schriftart eingeben, die Sie auf Ihrem System verwenden möchten
35 | "TeXGyreHeros" ; hier den Namen der Schriftart eingeben, die Sie auf Ihrem System verwenden möchten
36 | "TeXGyreCursor" ; hier den Namen der Schriftart eingeben, die Sie auf Ihrem System verwenden möchten
37 | (/ staff-height pt 20)))
38 | } % Diese 3 Schriftarten müssen auf Ihrem System installiert sein!
39 |
40 | \header {
41 | tagline = ##f
42 | }
43 |
44 | \layout {
45 | \context {
46 | \Score
47 | \remove "Bar_number_engraver"
48 | }
49 | }
50 |
51 | % %{OOoLilyPondCustom1Label%}Transpose:%{OOoLilyPondEnd%}
52 | % %{OOoLilyPondCustom2Label%}Image height:%{OOoLilyPondEnd%}
--------------------------------------------------------------------------------
/extension/templates/2.12/Deutsch.ly:
--------------------------------------------------------------------------------
1 | \language "deutsch"
2 | \transpose %{OOoLilyPondCustom1%}c c'%{OOoLilyPondEnd%}
3 | {
4 | %{OOoLilyPondCode%}% Hilfen zum Einstieg (URL in Web-Browser kopieren):
5 | % https://github.com/openlilylib/LO-ly (Englisch)
6 | % http://lilypond.org/doc/stable/Documentation/learning/simple-notation%
7 |
8 | \key e \major e8 fis gis e fis h,4. | e2\fermata \bar "|."
9 | %{OOoLilyPondEnd%}
10 | }
11 |
12 | \include "lilypond-book-preamble.ly"
13 | #(set-global-staff-size #!OOoLilyPondStaffSize!# 20 #!OOoLilyPondEnd!#)
14 |
15 | \paper {
16 | ragged-right = ##t
17 | line-width = %{OOoLilyPondLineWidth%}17 \cm%{OOoLilyPondEnd%}
18 | }
19 |
20 | \layout {
21 | indent = #0
22 | \context {
23 | \Score
24 | \remove "Bar_number_engraver"
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/extension/templates/2.12/Direct to LilyPond [SVG -dcrop].ly:
--------------------------------------------------------------------------------
1 | % This template file is exactly the same as "Direct to LilyPond [SVG].ly"
2 |
3 | %{OOoLilyPondCode%}% By using this template you can use the full power of LilyPond.
4 | % For more information plase read the LilyPond documentation:
5 | % http://lilypond.org/doc/stable/Documentation/notation/index
6 |
7 | \include "deutsch.ly"
8 | #(set-global-staff-size 20)
9 |
10 | \paper {
11 | paper-width = 17\cm
12 | paper-height = 8\cm
13 |
14 | ragged-right = ##t
15 |
16 | left-margin = 0
17 | right-margin = 0
18 | top-margin = 0
19 | bottom-margin = 0
20 | print-page-number = ##f
21 |
22 | page-count = 1
23 | }
24 |
25 | \header {
26 | tagline = ##f
27 | }
28 |
29 | \layout {
30 | indent = #0
31 | short-indent = \indent
32 | \context {
33 | \Score
34 | \remove "Bar_number_engraver"
35 | }
36 | }
37 |
38 | {
39 | \key e \major e'8 fis' gis' e' fis'4 h | e'2\fermata \bar "|."
40 | }
41 | % -------------------------------------------------------------------------------
42 |
43 | #(define version-seen #t)
44 |
45 | \paper {
46 | #(define fonts
47 | (make-pango-font-tree
48 | "TeXGyreSchola" ; adjust this font name according to your needs
49 | "TeXGyreHeros" ; adjust this font name according to your needs
50 | "TeXGyreCursor" ; adjust this font name according to your needs
51 | (/ staff-height pt 20)))
52 | } % Those 3 font families have to be installed on your system
53 | %{OOoLilyPondEnd%}
--------------------------------------------------------------------------------
/extension/templates/2.12/Direct to LilyPond [SVG].ly:
--------------------------------------------------------------------------------
1 | %{OOoLilyPondCode%}% By using this template you can use the full power of LilyPond.
2 | % For more information plase read the LilyPond documentation:
3 | % http://lilypond.org/doc/stable/Documentation/notation/index
4 |
5 | \include "deutsch.ly"
6 | #(set-global-staff-size 20)
7 |
8 | \paper {
9 | paper-width = 17\cm
10 | paper-height = 8\cm
11 |
12 | ragged-right = ##t
13 |
14 | left-margin = 0
15 | right-margin = 0
16 | top-margin = 0
17 | bottom-margin = 0
18 | print-page-number = ##f
19 |
20 | page-count = 1
21 | }
22 |
23 | \header {
24 | tagline = ##f
25 | }
26 |
27 | \layout {
28 | indent = #0
29 | short-indent = \indent
30 | \context {
31 | \Score
32 | \remove "Bar_number_engraver"
33 | }
34 | }
35 |
36 | {
37 | \key e \major e'8 fis' gis' e' fis'4 h | e'2\fermata \bar "|."
38 | }
39 | % -------------------------------------------------------------------------------
40 |
41 | #(define version-seen #t)
42 |
43 | \paper {
44 | #(define fonts
45 | (make-pango-font-tree
46 | "TeXGyreSchola" ; adjust this font name according to your needs
47 | "TeXGyreHeros" ; adjust this font name according to your needs
48 | "TeXGyreCursor" ; adjust this font name according to your needs
49 | (/ staff-height pt 20)))
50 | } % Those 3 font families have to be installed on your system
51 | %{OOoLilyPondEnd%}
--------------------------------------------------------------------------------
/extension/templates/2.12/Direct to LilyPond.ly:
--------------------------------------------------------------------------------
1 | %{OOoLilyPondCode%}% By using this template you can use the full power of LilyPond.
2 | % For more information plase read the LilyPond documentation:
3 | % http://lilypond.org/doc/stable/Documentation/notation/index
4 |
5 | \include "lilypond-book-preamble.ly"
6 | \include "deutsch.ly"
7 | #(set-global-staff-size 20)
8 |
9 | \paper {
10 | ragged-right = ##t
11 | line-width = 17\cm
12 | }
13 |
14 | \layout {
15 | indent = #0
16 | \context {
17 | \Score
18 | \remove "Bar_number_engraver"
19 | }
20 | }
21 |
22 | {
23 | \key e \major e'8 fis' gis' e' fis'4 h | e'2\fermata \bar "|."
24 | }
25 | %{OOoLilyPondEnd%}
--------------------------------------------------------------------------------
/extension/templates/2.12/Fret Board [SVG -dcrop].ly:
--------------------------------------------------------------------------------
1 | \include "predefined-guitar-fretboards.ly"
2 |
3 | % add your own diagrams here:
4 | % \storePredefinedDiagram \chordmode {c:9}
5 | % #guitar-tuning
6 | % #"x;3-2;2-1;3-3;3-4;x;"
7 |
8 | mychords = \chordmode{
9 | %{OOoLilyPondCode%}% For documentation about fret diagrams visit:
10 | % http://lilypond.org/doc/stable/Documentation/notation/fretted-string-instruments
11 |
12 | c c:m c:aug c:dim \break
13 | c:7 c:maj c:m7
14 | %{OOoLilyPondEnd%}
15 | }
16 |
17 | \transpose %{OOoLilyPondCustom1%}c c%{OOoLilyPondEnd%}
18 | <<
19 | \context ChordNames {
20 | \mychords
21 | }
22 | \context FretBoards {
23 | \mychords
24 | }
25 | >>
26 |
27 |
28 | #(set-global-staff-size #!OOoLilyPondStaffSize!# 20 #!OOoLilyPondEnd!#)
29 | #(define version-seen #t)
30 |
31 | \paper {
32 | ragged-right = ##t
33 | line-width = %{OOoLilyPondLineWidth%}17 \cm%{OOoLilyPondEnd%}
34 |
35 | #(define fonts
36 | (make-pango-font-tree
37 | "TeXGyreSchola" ; adjust this font name according to your needs
38 | "TeXGyreHeros" ; adjust this font name according to your needs
39 | "TeXGyreCursor" ; adjust this font name according to your needs
40 | (/ staff-height pt 20)))
41 | } % Those 3 font families have to be installed on your system
42 |
43 | \layout {
44 | indent = #0
45 | \context {
46 | \Score
47 | \remove "Bar_number_engraver"
48 | }
49 | }
50 |
51 | % %{OOoLilyPondCustom1Label%}Transpose:%{OOoLilyPondEnd%}
--------------------------------------------------------------------------------
/extension/templates/2.12/Fret Board [SVG].ly:
--------------------------------------------------------------------------------
1 | \include "predefined-guitar-fretboards.ly"
2 |
3 | % add your own diagrams here:
4 | % \storePredefinedDiagram \chordmode {c:9}
5 | % #guitar-tuning
6 | % #"x;3-2;2-1;3-3;3-4;x;"
7 |
8 | mychords = \chordmode{
9 | %{OOoLilyPondCode%}% For documentation about fret diagrams visit:
10 | % http://lilypond.org/doc/stable/Documentation/notation/fretted-string-instruments
11 |
12 | % Use the "Custom 2" field for image height of your musical snippet.
13 |
14 | c c:m c:aug c:dim \break
15 | c:7 c:maj c:m7
16 | %{OOoLilyPondEnd%}
17 | }
18 |
19 | \transpose %{OOoLilyPondCustom1%}c c%{OOoLilyPondEnd%}
20 | <<
21 | \context ChordNames {
22 | \mychords
23 | }
24 | \context FretBoards {
25 | \mychords
26 | }
27 | >>
28 |
29 |
30 | #(set-global-staff-size #!OOoLilyPondStaffSize!# 20 #!OOoLilyPondEnd!#)
31 | #(define version-seen #t)
32 |
33 | \paper {
34 | paper-width = %{OOoLilyPondLineWidth%}17 \cm%{OOoLilyPondEnd%}
35 | paper-height = %{OOoLilyPondCustom2%}6 \cm%{OOoLilyPondEnd%}
36 | indent = #0
37 | short-indent = \indent
38 | ragged-right = ##t
39 |
40 | left-margin = 0
41 | right-margin = 0
42 | top-margin = 0
43 | bottom-margin = 0
44 | print-page-number = ##f
45 |
46 | page-count = 1
47 |
48 | #(define fonts
49 | (make-pango-font-tree
50 | "TeXGyreSchola" ; adjust this font name according to your needs
51 | "TeXGyreHeros" ; adjust this font name according to your needs
52 | "TeXGyreCursor" ; adjust this font name according to your needs
53 | (/ staff-height pt 20)))
54 | } % Those 3 font families have to be installed on your system
55 |
56 | \header {
57 | tagline = ##f
58 | }
59 |
60 | \layout {
61 | \context {
62 | \Score
63 | \remove "Bar_number_engraver"
64 | }
65 | }
66 |
67 | % %{OOoLilyPondCustom1Label%}Transpose:%{OOoLilyPondEnd%}
68 | % %{OOoLilyPondCustom2Label%}Image height:%{OOoLilyPondEnd%}
--------------------------------------------------------------------------------
/extension/templates/2.12/Fret Board.ly:
--------------------------------------------------------------------------------
1 | \include "predefined-guitar-fretboards.ly"
2 |
3 | % add your own diagrams here:
4 | % \storePredefinedDiagram \chordmode {c:9}
5 | % #guitar-tuning
6 | % #"x;3-2;2-1;3-3;3-4;x;"
7 |
8 | mychords = \chordmode{
9 | %{OOoLilyPondCode%}% For documentation about fret diagrams visit:
10 | % http://lilypond.org/doc/stable/Documentation/notation/fretted-string-instruments
11 |
12 | c c:m c:aug c:dim \break
13 | c:7 c:maj c:m7
14 | %{OOoLilyPondEnd%}
15 | }
16 |
17 | \transpose %{OOoLilyPondCustom1%}c c%{OOoLilyPondEnd%}
18 | <<
19 | \context ChordNames {
20 | \mychords
21 | }
22 | \context FretBoards {
23 | \mychords
24 | }
25 | >>
26 |
27 |
28 |
29 | \include "lilypond-book-preamble.ly"
30 | #(set-global-staff-size #!OOoLilyPondStaffSize!# 20 #!OOoLilyPondEnd!#)
31 |
32 | \paper {
33 | ragged-right = ##t
34 | line-width = %{OOoLilyPondLineWidth%}17 \cm%{OOoLilyPondEnd%}
35 | }
36 |
37 | \layout {
38 | indent = #0
39 | \context {
40 | \Score
41 | \remove "Bar_number_engraver"
42 | }
43 | }
44 |
45 | % %{OOoLilyPondCustom1Label%}Transpose:%{OOoLilyPondEnd%}
--------------------------------------------------------------------------------
/extension/templates/2.12/Gitarrengriffe [SVG -dcrop].ly:
--------------------------------------------------------------------------------
1 | \include "predefined-guitar-fretboards.ly"
2 | \include "deutsch.ly"
3 |
4 | % Eigene Griffbilder können hier ergänzt werden:
5 | % \storePredefinedDiagram \chordmode {c:9}
6 | % #guitar-tuning
7 | % #"x;3-2;2-1;3-3;3-4;x;"
8 |
9 | mychords = \chordmode{
10 | %{OOoLilyPondCode%}%% Für Dokumentation zu Bund-Diagrammen siehe:
11 | % http://lilypond.org/doc/stable/Documentation/notation/fretted-string-instruments
12 |
13 | c d:m e:aug f:dim \break
14 | g:7 a:maj h:m7%{OOoLilyPondEnd%}
15 | }
16 |
17 | \transpose %{OOoLilyPondCustom1%}c c%{OOoLilyPondEnd%}
18 | <<
19 | \context ChordNames { \germanChords
20 | \mychords
21 | }
22 | \context FretBoards {
23 | \mychords
24 | }
25 | >>
26 |
27 |
28 | #(set-global-staff-size #!OOoLilyPondStaffSize!# 20 #!OOoLilyPondEnd!#)
29 | #(define version-seen #t)
30 |
31 | \paper {
32 | ragged-right = ##t
33 | line-width = %{OOoLilyPondLineWidth%}17 \cm%{OOoLilyPondEnd%}
34 |
35 | #(define fonts
36 | (make-pango-font-tree
37 | "TeXGyreSchola" ; adjust this font name according to your needs
38 | "TeXGyreHeros" ; adjust this font name according to your needs
39 | "TeXGyreCursor" ; adjust this font name according to your needs
40 | (/ staff-height pt 20)))
41 | } % Those 3 font families have to be installed on your system
42 |
43 | \layout {
44 | indent = #0
45 | \context {
46 | \Score
47 | \remove "Bar_number_engraver"
48 | }
49 | }
50 |
51 | % %{OOoLilyPondCustom1Label%}Transpose:%{OOoLilyPondEnd%}
--------------------------------------------------------------------------------
/extension/templates/2.12/Gitarrengriffe [SVG].ly:
--------------------------------------------------------------------------------
1 | \include "predefined-guitar-fretboards.ly"
2 | \include "deutsch.ly"
3 |
4 | % Eigene Griffbilder können hier ergänzt werden:
5 | % \storePredefinedDiagram \chordmode {c:9}
6 | % #guitar-tuning
7 | % #"x;3-2;2-1;3-3;3-4;x;"
8 |
9 | mychords = \chordmode{
10 | %{OOoLilyPondCode%}%% Für Dokumentation zu Bund-Diagrammen siehe:
11 | % http://lilypond.org/doc/stable/Documentation/notation/fretted-string-instruments
12 |
13 | c d:m e:aug f:dim \break
14 | g:7 a:maj h:m7%{OOoLilyPondEnd%}
15 | }
16 |
17 | \transpose %{OOoLilyPondCustom1%}c c%{OOoLilyPondEnd%}
18 | <<
19 | \context ChordNames { \germanChords
20 | \mychords
21 | }
22 | \context FretBoards {
23 | \mychords
24 | }
25 | >>
26 |
27 |
28 | #(set-global-staff-size #!OOoLilyPondStaffSize!# 20 #!OOoLilyPondEnd!#)
29 | #(define version-seen #t)
30 |
31 | \paper {
32 | paper-width = %{OOoLilyPondLineWidth%}17 \cm%{OOoLilyPondEnd%}
33 | paper-height = %{OOoLilyPondCustom2%}6 \cm%{OOoLilyPondEnd%}
34 | indent = #0
35 | short-indent = \indent
36 | ragged-right = ##t
37 |
38 | left-margin = 0
39 | right-margin = 0
40 | top-margin = 0
41 | bottom-margin = 0
42 | print-page-number = ##f
43 |
44 | page-count = 1
45 |
46 | #(define fonts
47 | (make-pango-font-tree
48 | "TeXGyreSchola" ; hier den Namen der Schriftart eingeben, die Sie auf Ihrem System verwenden möchten
49 | "TeXGyreHeros" ; hier den Namen der Schriftart eingeben, die Sie auf Ihrem System verwenden möchten
50 | "TeXGyreCursor" ; hier den Namen der Schriftart eingeben, die Sie auf Ihrem System verwenden möchten
51 | (/ staff-height pt 20)))
52 | } % Diese 3 Schriftarten müssen auf Ihrem System installiert sein!
53 |
54 | \header {
55 | tagline = ##f
56 | }
57 |
58 | \layout {
59 | \context {
60 | \Score
61 | \remove "Bar_number_engraver"
62 | }
63 | }
64 |
65 | % %{OOoLilyPondCustom1Label%}Transpose:%{OOoLilyPondEnd%}
66 | % %{OOoLilyPondCustom2Label%}Image height:%{OOoLilyPondEnd%}
--------------------------------------------------------------------------------
/extension/templates/2.12/Gitarrengriffe.ly:
--------------------------------------------------------------------------------
1 | \include "predefined-guitar-fretboards.ly"
2 | \include "deutsch.ly"
3 |
4 | % Eigene Griffbilder können hier ergänzt werden:
5 | % \storePredefinedDiagram \chordmode {c:9}
6 | % #guitar-tuning
7 | % #"x;3-2;2-1;3-3;3-4;x;"
8 |
9 | mychords = \chordmode{
10 | %{OOoLilyPondCode%}%% Für Dokumentation zu Bund-Diagrammen siehe:
11 | % http://lilypond.org/doc/stable/Documentation/notation/fretted-string-instruments
12 |
13 | c d:m e:aug f:dim \break
14 | g:7 a:maj h:m7%{OOoLilyPondEnd%}
15 | }
16 |
17 | \transpose %{OOoLilyPondCustom1%}c c%{OOoLilyPondEnd%}
18 | <<
19 | \context ChordNames { \germanChords
20 | \mychords
21 | }
22 | \context FretBoards {
23 | \mychords
24 | }
25 | >>
26 |
27 |
28 |
29 | \include "lilypond-book-preamble.ly"
30 | #(set-global-staff-size #!OOoLilyPondStaffSize!# 20 #!OOoLilyPondEnd!#)
31 |
32 | \paper {
33 | ragged-right = ##t
34 | line-width = %{OOoLilyPondLineWidth%}17 \cm%{OOoLilyPondEnd%}
35 | }
36 |
37 | \layout {
38 | indent = #0
39 | \context {
40 | \Score
41 | \remove "Bar_number_engraver"
42 | }
43 | }
44 |
45 | % %{OOoLilyPondCustom1Label%}Transpose:%{OOoLilyPondEnd%}
--------------------------------------------------------------------------------
/extension/templates/2.12/Italiano [SVG -dcrop].ly:
--------------------------------------------------------------------------------
1 | \language "italiano"
2 | \transpose %{OOoLilyPondCustom1%}do do'%{OOoLilyPondEnd%}
3 | {
4 | %{OOoLilyPondCode%}% For getting started read (copy URL into your web browser):
5 | % https://github.com/openlilylib/LO-ly
6 | % http://lilypond.org/doc/stable/Documentation/learning/simple-notation%
7 |
8 | \key mi \major mi8 fad sold mi fad si,4. | mi2\fermata \bar "|."
9 | %{OOoLilyPondEnd%}
10 | }
11 |
12 | #(set-global-staff-size #!OOoLilyPondStaffSize!# 20 #!OOoLilyPondEnd!#)
13 | #(define version-seen #t)
14 |
15 | \paper {
16 | ragged-right = ##t
17 | line-width = %{OOoLilyPondLineWidth%}17 \cm%{OOoLilyPondEnd%}
18 |
19 | #(define fonts
20 | (make-pango-font-tree
21 | "TeXGyreSchola" ; adjust this font name according to your needs
22 | "TeXGyreHeros" ; adjust this font name according to your needs
23 | "TeXGyreCursor" ; adjust this font name according to your needs
24 | (/ staff-height pt 20)))
25 | } % Those 3 font families have to be installed on your system
26 |
27 | \layout {
28 | indent = #0
29 | \context {
30 | \Score
31 | \remove "Bar_number_engraver"
32 | }
33 | }
34 |
35 | % %{OOoLilyPondCustom1Label%}Transpose:%{OOoLilyPondEnd%}
--------------------------------------------------------------------------------
/extension/templates/2.12/Italiano [SVG].ly:
--------------------------------------------------------------------------------
1 | \language "italiano"
2 | \transpose %{OOoLilyPondCustom1%}do do'%{OOoLilyPondEnd%}
3 | {
4 | %{OOoLilyPondCode%}% For getting started read (copy URL into your web browser):
5 | % https://github.com/openlilylib/LO-ly
6 | % http://lilypond.org/doc/stable/Documentation/learning/simple-notation%
7 |
8 | \key mi \major mi8 fad sold mi fad si,4. | mi2\fermata \bar "|."%{OOoLilyPondEnd%}
9 | }
10 |
11 | % -------------------------------------------------------
12 |
13 | #(set-global-staff-size #!OOoLilyPondStaffSize!# 20 #!OOoLilyPondEnd!#)
14 | #(define version-seen #t)
15 |
16 |
17 | \paper {
18 | paper-width = %{OOoLilyPondLineWidth%}17 \cm%{OOoLilyPondEnd%}
19 | paper-height = %{OOoLilyPondCustom2%}6 \cm%{OOoLilyPondEnd%}
20 | indent = #0
21 | short-indent = \indent
22 | ragged-right = ##t
23 |
24 | left-margin = 0
25 | right-margin = 0
26 | top-margin = 0
27 | bottom-margin = 0
28 | print-page-number = ##f
29 |
30 | page-count = 1
31 |
32 | #(define fonts
33 | (make-pango-font-tree
34 | "TeXGyreSchola" ; adjust this font name according to your needs
35 | "TeXGyreHeros" ; adjust this font name according to your needs
36 | "TeXGyreCursor" ; adjust this font name according to your needs
37 | (/ staff-height pt 20)))
38 | } % Those 3 font families have to be installed on your system
39 |
40 | \header {
41 | tagline = ##f
42 | }
43 |
44 | \layout {
45 | \context {
46 | \Score
47 | \remove "Bar_number_engraver"
48 | }
49 | }
50 |
51 | % %{OOoLilyPondCustom1Label%}Transpose:%{OOoLilyPondEnd%}
52 | % %{OOoLilyPondCustom2Label%}Image height:%{OOoLilyPondEnd%}
--------------------------------------------------------------------------------
/extension/templates/2.12/Italiano.ly:
--------------------------------------------------------------------------------
1 | \language "italiano"
2 | \transpose %{OOoLilyPondCustom1%}do do'%{OOoLilyPondEnd%}
3 | {
4 | %{OOoLilyPondCode%}% For getting started read (copy URL into your web browser):
5 | % https://github.com/openlilylib/LO-ly
6 | % http://lilypond.org/doc/stable/Documentation/learning/simple-notation%
7 |
8 | \key mi \major mi8 fad sold mi fad si,4. | mi2\fermata \bar "|."
9 | %{OOoLilyPondEnd%}
10 | }
11 |
12 | \include "lilypond-book-preamble.ly"
13 | #(set-global-staff-size #!OOoLilyPondStaffSize!# 20 #!OOoLilyPondEnd!#)
14 |
15 | \paper {
16 | ragged-right = ##t
17 | line-width = %{OOoLilyPondLineWidth%}17 \cm%{OOoLilyPondEnd%}
18 | }
19 |
20 | \layout {
21 | indent = #0
22 | \context {
23 | \Score
24 | \remove "Bar_number_engraver"
25 | }
26 | }
27 |
28 | % %{OOoLilyPondCustom1Label%}Transpose:%{OOoLilyPondEnd%}
--------------------------------------------------------------------------------
/extension/templates/2.12/Piano [SVG -dcrop].ly:
--------------------------------------------------------------------------------
1 | #(set-global-staff-size #!OOoLilyPondStaffSize!# 20 #!OOoLilyPondEnd!#)
2 | #(define version-seen #t)
3 |
4 | \paper {
5 | line-width = %{OOoLilyPondLineWidth%}17 \cm%{OOoLilyPondEnd%}
6 |
7 | #(define fonts
8 | (make-pango-font-tree
9 | "TeXGyreSchola" ; adjust this font name according to your needs
10 | "TeXGyreHeros" ; adjust this font name according to your needs
11 | "TeXGyreCursor" ; adjust this font name according to your needs
12 | (/ staff-height pt 20)))
13 | } % Those 3 font families have to be installed on your system
14 |
15 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
16 |
17 | %{OOoLilyPondCode%}
18 | {
19 | \new PianoStaff {
20 | <<
21 | \new Staff {c'4 d' e' f' g'2 g'}
22 | \new Staff {\clef bass c2 c4 d e2 e}
23 | >>
24 | }
25 | }
26 |
27 | % -------------------------------------------------------
28 |
29 | \paper {
30 | short-indent = 0\cm
31 | indent = 0\cm
32 | ragged-right = ##t
33 | }
34 |
35 | \layout {
36 | \context {
37 | \Score
38 | \remove "Bar_number_engraver"
39 | }
40 | }
41 | %{OOoLilyPondEnd%}
42 |
--------------------------------------------------------------------------------
/extension/templates/2.12/Piano [SVG].ly:
--------------------------------------------------------------------------------
1 | #(set-global-staff-size #!OOoLilyPondStaffSize!# 20 #!OOoLilyPondEnd!#)
2 | #(define version-seen #t)
3 |
4 | \paper {
5 | paper-width = %{OOoLilyPondLineWidth%}8 \cm%{OOoLilyPondEnd%}
6 | paper-height = %{OOoLilyPondCustom2%}4 \cm%{OOoLilyPondEnd%}
7 |
8 | #(define fonts
9 | (make-pango-font-tree
10 | "TeXGyreSchola" ; adjust this font name according to your needs
11 | "TeXGyreHeros" ; adjust this font name according to your needs
12 | "TeXGyreCursor" ; adjust this font name according to your needs
13 | (/ staff-height pt 20)))
14 | } % Those 3 font families have to be installed on your system
15 |
16 | \paper {
17 | indent = %{OOoLilyPondCustom1%}2.5 \mm%{OOoLilyPondEnd%}
18 | }
19 |
20 |
21 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
22 |
23 | %{OOoLilyPondCode%}% Use "Custom 1" for indent
24 | % Use "Custom 2" for paper height
25 |
26 | % http://lilypond.org/doc/stable/Documentation/notation/keyboard-and-other-multi_002dstaff-instruments
27 |
28 | {
29 | \new PianoStaff {
30 | <<
31 | \new Staff {c'4 d' e' f' g'2 g'}
32 | \new Staff {\clef bass c2 c4 d e2 e}
33 | >>
34 | }
35 | }
36 |
37 | % -------------------------------------------------------
38 |
39 | \paper {
40 | short-indent = \indent
41 | ragged-right = ##t
42 |
43 | left-margin = 0
44 | right-margin = 0
45 | top-margin = 0
46 | bottom-margin = 0
47 | print-page-number = ##f
48 |
49 | page-count = 1
50 | }
51 |
52 | \header {
53 | tagline = ##f
54 | }
55 |
56 | \layout {
57 | \context {
58 | \Score
59 | \remove "Bar_number_engraver"
60 | }
61 | }
62 | %{OOoLilyPondEnd%}
63 |
64 | % %{OOoLilyPondCustom1Label%}Indent:%{OOoLilyPondEnd%}
65 | % %{OOoLilyPondCustom2Label%}Image height:%{OOoLilyPondEnd%}
--------------------------------------------------------------------------------
/extension/templates/2.12/Piano.ly:
--------------------------------------------------------------------------------
1 | \include "lilypond-book-preamble.ly"
2 | #(set-global-staff-size #!OOoLilyPondStaffSize!# 20 #!OOoLilyPondEnd!#)
3 |
4 | \paper {
5 | line-width = %{OOoLilyPondLineWidth%}17 \cm%{OOoLilyPondEnd%}
6 | }
7 |
8 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9 |
10 | %{OOoLilyPondCode%}
11 | {
12 | \new PianoStaff {
13 | <<
14 | \new Staff {c'4 d' e' f' g'2 g'}
15 | \new Staff {\clef bass c2 c4 d e2 e}
16 | >>
17 | }
18 | }
19 |
20 | % -------------------------------------------------------
21 |
22 | \paper {
23 | short-indent = 0\cm
24 | indent = 0\cm
25 | ragged-right = ##t
26 | }
27 |
28 | \layout {
29 | \context {
30 | \Score
31 | \remove "Bar_number_engraver"
32 | }
33 | }
34 | %{OOoLilyPondEnd%}
35 |
--------------------------------------------------------------------------------
/extension/templates/2.12/Relative [SVG -dcrop].ly:
--------------------------------------------------------------------------------
1 | \transpose %{OOoLilyPondCustom1%}c c%{OOoLilyPondEnd%}
2 | \relative %{OOoLilyPondCustom2%}g,%{OOoLilyPondEnd%} {
3 | %{OOoLilyPondCode%}% This templates lets you enter notes in relative mode.
4 | % See the LilyPond documentation:
5 | % http://lilypond.org/doc/stable/Documentation/notation/pitches
6 | % The start pitch you can specify in the "Custom 2" field.
7 |
8 | \key g \major
9 | \clef bass
10 | g8 a b g c a d d, | g2 \bar "|."%{OOoLilyPondEnd%}
11 | }
12 |
13 | #(set-global-staff-size #!OOoLilyPondStaffSize!# 20 #!OOoLilyPondEnd!#)
14 | #(define version-seen #t)
15 |
16 | \paper {
17 | ragged-right = ##t
18 | line-width = %{OOoLilyPondLineWidth%}17 \cm%{OOoLilyPondEnd%}
19 |
20 | #(define fonts
21 | (make-pango-font-tree
22 | "TeXGyreSchola" ; adjust this font name according to your needs
23 | "TeXGyreHeros" ; adjust this font name according to your needs
24 | "TeXGyreCursor" ; adjust this font name according to your needs
25 | (/ staff-height pt 20)))
26 | } % Those 3 font families have to be installed on your system
27 |
28 | \layout {
29 | indent = #0
30 | \context {
31 | \Score
32 | \remove "Bar_number_engraver"
33 | }
34 | }
35 |
36 | % %{OOoLilyPondCustom1Label%}Transpose:%{OOoLilyPondEnd%}
37 | % %{OOoLilyPondCustom2Label%}\relative:%{OOoLilyPondEnd%}
--------------------------------------------------------------------------------
/extension/templates/2.12/Relative [SVG].ly:
--------------------------------------------------------------------------------
1 | \transpose %{OOoLilyPondCustom1%}c c%{OOoLilyPondEnd%}
2 | \relative %{OOoLilyPondCustom2%}g,%{OOoLilyPondEnd%} {
3 | %{OOoLilyPondCode%}% This templates lets you enter notes in relative mode.
4 | % See the LilyPond documentation:
5 | % http://lilypond.org/doc/stable/Documentation/notation/pitches
6 | % The start pitch you can specify in the "Custom 2" field.
7 |
8 | \key g \major
9 | \clef bass
10 | g8 a b g c a d d, | g2 \bar "|."%{OOoLilyPondEnd%}
11 | }
12 |
13 | % -------------------------------------------------------
14 |
15 | #(set-global-staff-size #!OOoLilyPondStaffSize!# 20 #!OOoLilyPondEnd!#)
16 | #(define version-seen #t)
17 |
18 | \paper {
19 | paper-width = %{OOoLilyPondLineWidth%}17 \cm%{OOoLilyPondEnd%}
20 | paper-height = 8\cm
21 | indent = #0
22 | short-indent = \indent
23 | ragged-right = ##t
24 |
25 | left-margin = 0
26 | right-margin = 0
27 | top-margin = 0
28 | bottom-margin = 0
29 | print-page-number = ##f
30 |
31 | page-count = 1
32 |
33 | #(define fonts
34 | (make-pango-font-tree
35 | "TeXGyreSchola" ; adjust this font name according to your needs
36 | "TeXGyreHeros" ; adjust this font name according to your needs
37 | "TeXGyreCursor" ; adjust this font name according to your needs
38 | (/ staff-height pt 20)))
39 | } % Those 3 font families have to be installed on your system
40 |
41 | \header {
42 | tagline = ##f
43 | }
44 |
45 | \layout {
46 | \context {
47 | \Score
48 | \remove "Bar_number_engraver"
49 | }
50 | }
51 |
52 | % %{OOoLilyPondCustom1Label%}Transpose:%{OOoLilyPondEnd%}
53 | % %{OOoLilyPondCustom2Label%}\relative:%{OOoLilyPondEnd%}
--------------------------------------------------------------------------------
/extension/templates/2.12/Relative.ly:
--------------------------------------------------------------------------------
1 | \transpose %{OOoLilyPondCustom1%}c c%{OOoLilyPondEnd%}
2 | \relative %{OOoLilyPondCustom2%}g,%{OOoLilyPondEnd%} {
3 | %{OOoLilyPondCode%}% This templates lets you enter notes in relative mode.
4 | % See the LilyPond documentation:
5 | % http://lilypond.org/doc/stable/Documentation/notation/pitches
6 | % The start pitch you can specify in the "Custom 2" field.
7 |
8 | \key g \major
9 | \clef bass
10 | g8 a b g c a d d, | g2 \bar "|."%{OOoLilyPondEnd%}
11 | }
12 |
13 | \include "lilypond-book-preamble.ly"
14 | #(set-global-staff-size #!OOoLilyPondStaffSize!# 20 #!OOoLilyPondEnd!#)
15 |
16 | \paper {
17 | ragged-right = ##t
18 | line-width = %{OOoLilyPondLineWidth%}17 \cm%{OOoLilyPondEnd%}
19 | }
20 |
21 | \layout {
22 | indent = #0
23 | \context {
24 | \Score
25 | \remove "Bar_number_engraver"
26 | }
27 | }
28 |
29 | % %{OOoLilyPondCustom1Label%}Transpose:%{OOoLilyPondEnd%}
30 | % %{OOoLilyPondCustom2Label%}\relative:%{OOoLilyPondEnd%}
--------------------------------------------------------------------------------
/extension/templates/2.12/School Demo [SVG -dcrop].ly:
--------------------------------------------------------------------------------
1 | #(set-global-staff-size #!OOoLilyPondStaffSize!# 20 #!OOoLilyPondEnd!#)
2 | #(define version-seen #t)
3 |
4 | \layout {
5 | indent = %{OOoLilyPondCustom1%}0 \mm%{OOoLilyPondEnd%}
6 | ragged-right = %{OOoLilyPondCustom3%}##t%{OOoLilyPondEnd%}
7 | }
8 |
9 | % ------------------------------------------------------------
10 | %{OOoLilyPondCode%}\new Staff \relative c' {
11 | \clef "treble" % "alto", "tenor", "bass", "treble_8", "treble^8", ...
12 | \key c \major % c \minor
13 | \time 4/4
14 |
15 | % \set Score.proportionalNotationDuration = #(ly:make-moment 1/4) % or 1/2, 1/8, ...
16 | % \cadenzaOn
17 |
18 | c4 d e f g a b c
19 |
20 | % \bar "|." % bar lines: "|.", "||", "!", ";", ""
21 |
22 | }
23 | \addlyrics {
24 | do re mi fa so la ti do
25 | }
26 |
27 | % \new RhythmicStaff { c4 c8 c c4 c }
28 | % \addlyrics { "1" "2" "+" "3" "4" }
29 |
30 | \layout {
31 | short-indent = \indent
32 | ragged-last = \ragged-right
33 | }
34 | %{OOoLilyPondEnd%}
35 | % ------------------------------------------------------------
36 |
37 | % #! and !# enclose block comments in scheme.
38 | % just as
39 | % %{ and %} do in LilyPond expressions.
40 |
41 | % In your templates, you can use either of them for tags like "OOoLilyPondStaffSize" etc.
42 | % On compilation, OLy will use scheme block comments for OOoLilyPondStaffSize (as above),
43 | % all other tags will be written with LilyPond block comments.
44 |
45 | % NOTE: A pair of tags cannot be used multiple times in a template!
46 | % Therefore the \remove "Bar_engraver" command is packed into a variable "OptionTwoFalseCommand"
47 | % that can be used multiple times without problems.
48 | CustomTwoCommand = \with { instrumentName = \markup \fontsize %{OOoLilyPondCustom2%}#4 ""%{OOoLilyPondEnd%} }
49 | OptionTwoFalseCommand = \with { %{OOoLilyPondOption2False%}\remove "Bar_engraver"%{OOoLilyPondEnd%} }
50 | OptionThreeFalseCommand = \with { %{OOoLilyPondOption3False%}\remove "Time_signature_engraver"%{OOoLilyPondEnd%} }
51 |
52 | \paper {
53 | line-width = %{OOoLilyPondLineWidth%}17 \cm%{OOoLilyPondEnd%}
54 |
55 | #(define fonts
56 | (make-pango-font-tree
57 | "TeXGyreSchola" ; adjust this font name according to your needs
58 | "TeXGyreHeros" ; adjust this font name according to your needs
59 | "TeXGyreCursor" ; adjust this font name according to your needs
60 | (/ staff-height pt 20)))
61 | } % Those 3 font families have to be installed on your system
62 |
63 | \layout {
64 | \context {
65 | \Staff
66 | \OptionTwoFalseCommand
67 | \OptionThreeFalseCommand
68 | \CustomTwoCommand
69 | \override Clef.full-size-change = ##t
70 | }
71 | \context { \DrumStaff \OptionTwoFalseCommand \OptionThreeFalseCommand \CustomTwoCommand}
72 | \context { \RhythmicStaff \OptionTwoFalseCommand \OptionThreeFalseCommand \CustomTwoCommand}
73 | \context { \TabStaff \OptionTwoFalseCommand \OptionThreeFalseCommand \CustomTwoCommand}
74 | \context {
75 | \Score
76 | % The code between the following two tags will be visible for LilyPond if Option3 is set to TRUE.
77 | % (It will be commented out if Option3 is set to FALSE.)
78 |
79 | %{OOoLilyPondOption3True%}\numericTimeSignature%{OOoLilyPondEnd%}
80 |
81 | % The code between the following two tags will be visible for LilyPond if Option4 is set to FALSE.
82 | % (It will be commented out if Option4 is set to TRUE.)
83 |
84 | %{OOoLilyPondOption4False%}\remove "Bar_number_engraver"%{OOoLilyPondEnd%}
85 |
86 | \override BarNumber.break-visibility = #end-of-line-invisible
87 | \override BarNumber.self-alignment-X = #LEFT
88 | \override BreakAlignment.break-align-orders =
89 | #(make-vector 3
90 | '( left-edge span-bar breathing-sign staff-bar
91 | clef key-cancellation key-signature time-signature
92 | ))
93 | }
94 | \context {
95 | \Voice
96 | %{OOoLilyPondOption1False%}\remove "Stem_engraver"%{OOoLilyPondEnd%}
97 | }
98 | }
99 |
100 | % The following OOoLilyPond settings would cause compilation errors,
101 | % therefore they must be preceeded by a comment sign (%)!
102 |
103 | % Values (##t or ##f) for CheckBoxes (Option1 ... Option4)
104 |
105 | % %{OOoLilyPondOption1Value%}##t%{OOoLilyPondEnd%}
106 | % %{OOoLilyPondOption2Value%}##t%{OOoLilyPondEnd%}
107 | % %{OOoLilyPondOption3Value%}##t%{OOoLilyPondEnd%}
108 | % %{OOoLilyPondOption4Value%}##f%{OOoLilyPondEnd%}
109 |
110 | % Here you can define new labels for dialog control elements:
111 |
112 | % %{OOoLilyPondCustom1Label%}Indent:%{OOoLilyPondEnd%}
113 | % %{OOoLilyPondCustom2Label%}#Size + "Name"%{OOoLilyPondEnd%}
114 | % %{OOoLilyPondCustom3Label%}Ragged-right%{OOoLilyPondEnd%}
115 | % %{OOoLilyPondOption1Label%}Stems%{OOoLilyPondEnd%}
116 | % %{OOoLilyPondOption2Label%}Bars%{OOoLilyPondEnd%}
117 | % %{OOoLilyPondOption3Label%}Time signature%{OOoLilyPondEnd%}
118 | % %{OOoLilyPondOption4Label%}Bar numbers%{OOoLilyPondEnd%}
119 |
120 | % Even the "Line Width" and "Staff Size" labels can be changed:
121 | % use "OOoLilyPondLineWidthLabel" or "OOoLilyPondStaffSizeLabel" as above.
122 |
--------------------------------------------------------------------------------
/extension/templates/2.12/School Demo [SVG].ly:
--------------------------------------------------------------------------------
1 | #(set-global-staff-size #!OOoLilyPondStaffSize!# 20 #!OOoLilyPondEnd!#)
2 | #(define version-seen #t)
3 |
4 | \layout {
5 | indent = %{OOoLilyPondCustom1%}0 \mm%{OOoLilyPondEnd%}
6 | ragged-right = %{OOoLilyPondCustom3%}##t%{OOoLilyPondEnd%}
7 | }
8 |
9 | % ------------------------------------------------------------
10 | %{OOoLilyPondCode%}\new Staff \relative c' {
11 | \clef "treble" % "alto", "tenor", "bass", "treble_8", "treble^8", ...
12 | \key c \major % c \minor
13 | \time 4/4
14 |
15 | % \set Score.proportionalNotationDuration = #(ly:make-moment 1/4) % or 1/2, 1/8, ...
16 | % \cadenzaOn
17 |
18 | c4 d e f g a b c
19 |
20 | % \bar "|." % bar lines: "|.", "||", "!", ";", ""
21 |
22 | }
23 | \addlyrics {
24 | do re mi fa so la ti do
25 | }
26 |
27 | % \new RhythmicStaff { c4 c8 c c4 c }
28 | % \addlyrics { "1" "2" "+" "3" "4" }
29 |
30 | \layout {
31 | short-indent = \indent
32 | ragged-last = \ragged-right
33 | }
34 | %{OOoLilyPondEnd%}
35 | % ------------------------------------------------------------
36 |
37 | % #! and !# enclose block comments in scheme.
38 | % just as
39 | % %{ and %} do in LilyPond expressions.
40 |
41 | % In your templates, you can use either of them for tags like "OOoLilyPondStaffSize" etc.
42 | % On compilation, OLy will use scheme block comments for OOoLilyPondStaffSize (as above),
43 | % all other tags will be written with LilyPond block comments.
44 |
45 | % NOTE: A pair of tags cannot be used multiple times in a template!
46 | % Therefore the \remove "Bar_engraver" command is packed into a variable "OptionTwoFalseCommand"
47 | % that can be used multiple times without problems.
48 | CustomTwoCommand = \with { instrumentName = \markup \fontsize %{OOoLilyPondCustom2%}#4 ""%{OOoLilyPondEnd%} }
49 | OptionTwoFalseCommand = \with { %{OOoLilyPondOption2False%}\remove "Bar_engraver"%{OOoLilyPondEnd%} }
50 | OptionThreeFalseCommand = \with { %{OOoLilyPondOption3False%}\remove "Time_signature_engraver"%{OOoLilyPondEnd%} }
51 |
52 | \paper {
53 | paper-width = %{OOoLilyPondLineWidth%}17 \cm%{OOoLilyPondEnd%}
54 | paper-height = %{OOoLilyPondCustom4%}4 \cm%{OOoLilyPondEnd%}
55 |
56 | left-margin = 0
57 | right-margin = 0
58 | top-margin = 0
59 | bottom-margin = 0
60 | print-page-number = ##f
61 |
62 | page-count = 1
63 |
64 | #(define fonts
65 | (make-pango-font-tree
66 | "TeXGyreSchola" ; adjust this font name according to your needs
67 | "TeXGyreHeros" ; adjust this font name according to your needs
68 | "TeXGyreCursor" ; adjust this font name according to your needs
69 | (/ staff-height pt 20)))
70 | } % Those 3 font families have to be installed on your system
71 |
72 |
73 | \header {
74 | tagline = ##f
75 | }
76 |
77 | \layout {
78 | \context {
79 | \Staff
80 | \OptionTwoFalseCommand
81 | \OptionThreeFalseCommand
82 | \CustomTwoCommand
83 | \override Clef.full-size-change = ##t
84 | }
85 | \context { \DrumStaff \OptionTwoFalseCommand \OptionThreeFalseCommand \CustomTwoCommand}
86 | \context { \RhythmicStaff \OptionTwoFalseCommand \OptionThreeFalseCommand \CustomTwoCommand}
87 | \context { \TabStaff \OptionTwoFalseCommand \OptionThreeFalseCommand \CustomTwoCommand}
88 | \context {
89 | \Score
90 | % The code between the following two tags will be visible for LilyPond if Option3 is set to TRUE.
91 | % (It will be commented out if Option3 is set to FALSE.)
92 |
93 | %{OOoLilyPondOption3True%}\numericTimeSignature%{OOoLilyPondEnd%}
94 |
95 | % The code between the following two tags will be visible for LilyPond if Option4 is set to FALSE.
96 | % (It will be commented out if Option4 is set to TRUE.)
97 |
98 | %{OOoLilyPondOption4False%}\remove "Bar_number_engraver"%{OOoLilyPondEnd%}
99 |
100 | \override BarNumber.break-visibility = #end-of-line-invisible
101 | \override BarNumber.self-alignment-X = #LEFT
102 | \override BreakAlignment.break-align-orders =
103 | #(make-vector 3
104 | '( left-edge span-bar breathing-sign staff-bar
105 | clef key-cancellation key-signature time-signature
106 | ))
107 | }
108 | \context {
109 | \Voice
110 | %{OOoLilyPondOption1False%}\remove "Stem_engraver"%{OOoLilyPondEnd%}
111 | }
112 | }
113 |
114 | % The following OOoLilyPond settings would cause compilation errors,
115 | % therefore they must be preceeded by a comment sign (%)!
116 |
117 | % Values (##t or ##f) for CheckBoxes (Option1 ... Option4)
118 |
119 | % %{OOoLilyPondOption1Value%}##t%{OOoLilyPondEnd%}
120 | % %{OOoLilyPondOption2Value%}##t%{OOoLilyPondEnd%}
121 | % %{OOoLilyPondOption3Value%}##t%{OOoLilyPondEnd%}
122 | % %{OOoLilyPondOption4Value%}##f%{OOoLilyPondEnd%}
123 |
124 | % Here you can define new labels for dialog control elements:
125 |
126 | % %{OOoLilyPondCustom1Label%}Indent:%{OOoLilyPondEnd%}
127 | % %{OOoLilyPondCustom2Label%}#Size + "Name"%{OOoLilyPondEnd%}
128 | % %{OOoLilyPondCustom3Label%}Ragged-right%{OOoLilyPondEnd%}
129 | % %{OOoLilyPondCustom4Label%}Image height:%{OOoLilyPondEnd%}
130 | % %{OOoLilyPondOption1Label%}Stems%{OOoLilyPondEnd%}
131 | % %{OOoLilyPondOption2Label%}Bars%{OOoLilyPondEnd%}
132 | % %{OOoLilyPondOption3Label%}Time signature%{OOoLilyPondEnd%}
133 | % %{OOoLilyPondOption4Label%}Bar numbers%{OOoLilyPondEnd%}
134 |
135 | % Even the "Line Width" and "Staff Size" labels can be changed:
136 | % use "OOoLilyPondLineWidthLabel" or "OOoLilyPondStaffSizeLabel" as above.
137 |
--------------------------------------------------------------------------------
/extension/templates/2.12/School Demo.ly:
--------------------------------------------------------------------------------
1 | \include "lilypond-book-preamble.ly"
2 | #(set-global-staff-size #!OOoLilyPondStaffSize!# 20 #!OOoLilyPondEnd!#)
3 |
4 | \layout {
5 | indent = %{OOoLilyPondCustom1%}0 \mm%{OOoLilyPondEnd%}
6 | ragged-right = %{OOoLilyPondCustom3%}##t%{OOoLilyPondEnd%}
7 | }
8 |
9 | % ------------------------------------------------------------
10 | %{OOoLilyPondCode%}\new Staff \relative c' {
11 | \clef "treble" % "alto", "tenor", "bass", "treble_8", "treble^8", ...
12 | \key c \major % c \minor
13 | \time 4/4
14 |
15 | % \set Score.proportionalNotationDuration = #(ly:make-moment 1/4) % or 1/2, 1/8, ...
16 | % \cadenzaOn
17 |
18 | c4 d e f g a b c
19 |
20 | % \bar "|." % bar lines: "|.", "||", "!", ";", ""
21 |
22 | }
23 | \addlyrics {
24 | do re mi fa so la ti do
25 | }
26 |
27 | % \new RhythmicStaff { c4 c8 c c4 c }
28 | % \addlyrics { "1" "2" "+" "3" "4" }
29 |
30 | \layout {
31 | short-indent = \indent
32 | ragged-last = \ragged-right
33 | }
34 | %{OOoLilyPondEnd%}
35 | % ------------------------------------------------------------
36 |
37 | % #! and !# enclose block comments in scheme.
38 | % just as
39 | % %{ and %} do in LilyPond expressions.
40 |
41 | % In your templates, you can use either of them for tags like "OOoLilyPondStaffSize" etc.
42 | % On compilation, OLy will use scheme block comments for OOoLilyPondStaffSize (as above),
43 | % all other tags will be written with LilyPond block comments.
44 |
45 | % NOTE: A pair of tags cannot be used multiple times in a template!
46 | % Therefore the \remove "Bar_engraver" command is packed into a variable "OptionTwoFalseCommand"
47 | % that can be used multiple times without problems.
48 | CustomTwoCommand = \with { instrumentName = \markup \fontsize %{OOoLilyPondCustom2%}#4 ""%{OOoLilyPondEnd%} }
49 | OptionTwoFalseCommand = \with { %{OOoLilyPondOption2False%}\remove "Bar_engraver"%{OOoLilyPondEnd%} }
50 | OptionThreeFalseCommand = \with { %{OOoLilyPondOption3False%}\remove "Time_signature_engraver"%{OOoLilyPondEnd%} }
51 |
52 | \paper {
53 | line-width = %{OOoLilyPondLineWidth%}17 \cm%{OOoLilyPondEnd%}
54 | }
55 |
56 | \layout {
57 | \context {
58 | \Staff
59 | \OptionTwoFalseCommand
60 | \OptionThreeFalseCommand
61 | \CustomTwoCommand
62 | \override Clef.full-size-change = ##t
63 | }
64 | \context { \DrumStaff \OptionTwoFalseCommand \OptionThreeFalseCommand \CustomTwoCommand}
65 | \context { \RhythmicStaff \OptionTwoFalseCommand \OptionThreeFalseCommand \CustomTwoCommand}
66 | \context { \TabStaff \OptionTwoFalseCommand \OptionThreeFalseCommand \CustomTwoCommand}
67 | \context {
68 | \Score
69 | % The code between the following two tags will be visible for LilyPond if Option3 is set to TRUE.
70 | % (It will be commented out if Option3 is set to FALSE.)
71 |
72 | %{OOoLilyPondOption3True%}\numericTimeSignature%{OOoLilyPondEnd%}
73 |
74 | % The code between the following two tags will be visible for LilyPond if Option4 is set to FALSE.
75 | % (It will be commented out if Option4 is set to TRUE.)
76 |
77 | %{OOoLilyPondOption4False%}\remove "Bar_number_engraver"%{OOoLilyPondEnd%}
78 |
79 | \override BarNumber.break-visibility = #end-of-line-invisible
80 | \override BarNumber.self-alignment-X = #LEFT
81 | \override BreakAlignment.break-align-orders =
82 | #(make-vector 3
83 | '( left-edge span-bar breathing-sign staff-bar
84 | clef key-cancellation key-signature time-signature
85 | ))
86 | }
87 | \context {
88 | \Voice
89 | %{OOoLilyPondOption1False%}\remove "Stem_engraver"%{OOoLilyPondEnd%}
90 | }
91 | }
92 |
93 | % The following OOoLilyPond settings would cause compilation errors,
94 | % therefore they must be preceeded by a comment sign (%)!
95 |
96 | % Values (##t or ##f) for CheckBoxes (Option1 ... Option4)
97 |
98 | % %{OOoLilyPondOption1Value%}##t%{OOoLilyPondEnd%}
99 | % %{OOoLilyPondOption2Value%}##t%{OOoLilyPondEnd%}
100 | % %{OOoLilyPondOption3Value%}##t%{OOoLilyPondEnd%}
101 | % %{OOoLilyPondOption4Value%}##f%{OOoLilyPondEnd%}
102 |
103 | % Here you can define new labels for dialog control elements:
104 |
105 | % %{OOoLilyPondCustom1Label%}Indent:%{OOoLilyPondEnd%}
106 | % %{OOoLilyPondCustom2Label%}#Size + "Name"%{OOoLilyPondEnd%}
107 | % %{OOoLilyPondCustom3Label%}Ragged-right%{OOoLilyPondEnd%}
108 | % %{OOoLilyPondOption1Label%}Stems%{OOoLilyPondEnd%}
109 | % %{OOoLilyPondOption2Label%}Bars%{OOoLilyPondEnd%}
110 | % %{OOoLilyPondOption3Label%}Time signature%{OOoLilyPondEnd%}
111 | % %{OOoLilyPondOption4Label%}Bar numbers%{OOoLilyPondEnd%}
112 |
113 | % Even the "Line Width" and "Staff Size" labels can be changed:
114 | % use "OOoLilyPondLineWidthLabel" or "OOoLilyPondStaffSizeLabel" as above.
115 |
--------------------------------------------------------------------------------
/extension/templates/2.12/School Piano Demo [SVG -dcrop].ly:
--------------------------------------------------------------------------------
1 | #(set-global-staff-size #!OOoLilyPondStaffSize!# 20 #!OOoLilyPondEnd!#)
2 | #(define version-seen #t)
3 |
4 | \layout {
5 | indent = %{OOoLilyPondCustom1%}0 \mm%{OOoLilyPondEnd%}
6 | ragged-right = %{OOoLilyPondCustom3%}##t%{OOoLilyPondEnd%}
7 | }
8 |
9 | % ------------------------------------------------------------
10 | %{OOoLilyPondCode%}{
11 | \new PianoStaff { % ChoirStaff { % StaffGroup {
12 | <<
13 | \new Staff \relative c' {
14 | \clef "treble"
15 | \key c \major % c \minor
16 | \time 4/4
17 |
18 | c4 d e f g2 g
19 | }
20 |
21 | \addlyrics { do re mi fa so so }
22 |
23 | \new Staff \relative c {
24 | \clef "bass"
25 | \key c \major % c \minor
26 | \time 4/4
27 |
28 | c2 c4 d e2 e
29 | }
30 | \addlyrics { do do re mi mi }
31 | >>
32 | }
33 | }
34 |
35 |
36 | \layout {
37 | short-indent = \indent
38 | ragged-last = \ragged-right
39 | }
40 | %{OOoLilyPondEnd%}
41 | % ------------------------------------------------------------
42 |
43 | % #! and !# enclose block comments in scheme.
44 | % just as
45 | % %{ and %} do in LilyPond expressions.
46 |
47 | % In your templates, you can use either of them for tags like "OOoLilyPondStaffSize" etc.
48 | % On compilation, OLy will use scheme block comments for OOoLilyPondStaffSize (as above),
49 | % all other tags will be written with LilyPond block comments.
50 |
51 | % NOTE: A pair of tags cannot be used multiple times in a template!
52 | % Therefore the \remove "Bar_engraver" command is packed into a variable "OptionTwoFalseCommand"
53 | % that can be used multiple times without problems.
54 | CustomTwoCommand = \with { instrumentName = \markup \fontsize %{OOoLilyPondCustom2%}#4 "1.)"%{OOoLilyPondEnd%} }
55 | OptionTwoFalseCommand = \with { %{OOoLilyPondOption2False%}\remove "Bar_engraver"%{OOoLilyPondEnd%} }
56 | OptionThreeFalseCommand = \with { %{OOoLilyPondOption3False%}\remove "Time_signature_engraver"%{OOoLilyPondEnd%} }
57 |
58 | \paper {
59 | line-width = %{OOoLilyPondLineWidth%}17 \cm%{OOoLilyPondEnd%}
60 |
61 | #(define fonts
62 | (make-pango-font-tree
63 | "TeXGyreSchola" ; adjust this font name according to your needs
64 | "TeXGyreHeros" ; adjust this font name according to your needs
65 | "TeXGyreCursor" ; adjust this font name according to your needs
66 | (/ staff-height pt 20)))
67 | } % Those 3 font families have to be installed on your system
68 |
69 | \layout {
70 | \context {
71 | \Staff
72 | \OptionTwoFalseCommand
73 | \OptionThreeFalseCommand
74 | % \CustomTwoCommand
75 | \override Clef.full-size-change = ##t
76 | }
77 | \context { \DrumStaff \OptionTwoFalseCommand \OptionThreeFalseCommand}
78 | \context { \RhythmicStaff \OptionTwoFalseCommand \OptionThreeFalseCommand}
79 | \context { \TabStaff \OptionTwoFalseCommand \OptionThreeFalseCommand}
80 | \context { \PianoStaff \OptionTwoFalseCommand \OptionThreeFalseCommand \CustomTwoCommand}
81 | \context { \ChoirStaff \OptionTwoFalseCommand \OptionThreeFalseCommand \CustomTwoCommand}
82 | \context { \StaffGroup \OptionTwoFalseCommand \OptionThreeFalseCommand \CustomTwoCommand}
83 | \context {
84 | \Score
85 | % The code between the following two tags will be visible for LilyPond if Option3 is set to TRUE.
86 | % (It will be commented out if Option3 is set to FALSE.)
87 |
88 | %{OOoLilyPondOption3True%}\numericTimeSignature%{OOoLilyPondEnd%}
89 |
90 | % The code between the following two tags will be visible for LilyPond if Option4 is set to FALSE.
91 | % (It will be commented out if Option4 is set to TRUE.)
92 |
93 | %{OOoLilyPondOption4False%}\remove "Bar_number_engraver"%{OOoLilyPondEnd%}
94 |
95 | \override BarNumber.break-visibility = #end-of-line-invisible
96 | \override BarNumber.self-alignment-X = #LEFT
97 | \override BreakAlignment.break-align-orders = #(
98 | make-vector 3 '(
99 | left-edge span-bar breathing-sign staff-bar
100 | clef key-cancellation key-signature time-signature
101 | ))
102 | }
103 | \context {
104 | \Voice
105 | %{OOoLilyPondOption1False%}\remove "Stem_engraver"%{OOoLilyPondEnd%}
106 | }
107 | }
108 |
109 | % The following OOoLilyPond settings would cause compilation errors,
110 | % therefore they must be preceeded by a comment sign (%)!
111 |
112 | % Values (##t or ##f) for CheckBoxes (Option1 ... Option4)
113 |
114 | % %{OOoLilyPondOption1Value%}##t%{OOoLilyPondEnd%}
115 | % %{OOoLilyPondOption2Value%}##t%{OOoLilyPondEnd%}
116 | % %{OOoLilyPondOption3Value%}##t%{OOoLilyPondEnd%}
117 | % %{OOoLilyPondOption4Value%}##f%{OOoLilyPondEnd%}
118 |
119 | % Here you can define new labels for dialog control elements:
120 |
121 | % %{OOoLilyPondCustom1Label%}Indent:%{OOoLilyPondEnd%}
122 | % %{OOoLilyPondCustom2Label%}#Size + "Name"%{OOoLilyPondEnd%}
123 | % %{OOoLilyPondCustom3Label%}Ragged-right%{OOoLilyPondEnd%}
124 | % %{OOoLilyPondOption1Label%}Stems%{OOoLilyPondEnd%}
125 | % %{OOoLilyPondOption2Label%}Bars%{OOoLilyPondEnd%}
126 | % %{OOoLilyPondOption3Label%}Time signature%{OOoLilyPondEnd%}
127 | % %{OOoLilyPondOption4Label%}Bar numbers%{OOoLilyPondEnd%}
128 |
129 | % Even the "Line Width" and "Staff Size" labels can be changed:
130 | % use "OOoLilyPondLineWidthLabel" or "OOoLilyPondStaffSizeLabel" as above.
131 |
--------------------------------------------------------------------------------
/extension/templates/2.12/School Piano Demo [SVG].ly:
--------------------------------------------------------------------------------
1 | #(set-global-staff-size #!OOoLilyPondStaffSize!# 20 #!OOoLilyPondEnd!#)
2 | #(define version-seen #t)
3 |
4 | \layout {
5 | indent = %{OOoLilyPondCustom1%}0 \mm%{OOoLilyPondEnd%}
6 | ragged-right = %{OOoLilyPondCustom3%}##t%{OOoLilyPondEnd%}
7 | }
8 |
9 | % ------------------------------------------------------------
10 | %{OOoLilyPondCode%}{
11 | \new PianoStaff { % ChoirStaff { % StaffGroup {
12 | <<
13 | \new Staff \relative c' {
14 | \clef "treble"
15 | \key c \major % c \minor
16 | \time 4/4
17 |
18 | c4 d e f g2 g
19 | }
20 |
21 | \addlyrics { do re mi fa so so }
22 |
23 | \new Staff \relative c {
24 | \clef "bass"
25 | \key c \major % c \minor
26 | \time 4/4
27 |
28 | c2 c4 d e2 e
29 | }
30 | \addlyrics { do do re mi mi }
31 | >>
32 | }
33 | }
34 |
35 |
36 | \layout {
37 | short-indent = \indent
38 | ragged-last = \ragged-right
39 | }
40 | %{OOoLilyPondEnd%}
41 | % ------------------------------------------------------------
42 |
43 | % #! and !# enclose block comments in scheme.
44 | % just as
45 | % %{ and %} do in LilyPond expressions.
46 |
47 | % In your templates, you can use either of them for tags like "OOoLilyPondStaffSize" etc.
48 | % On compilation, OLy will use scheme block comments for OOoLilyPondStaffSize (as above),
49 | % all other tags will be written with LilyPond block comments.
50 |
51 | % NOTE: A pair of tags cannot be used multiple times in a template!
52 | % Therefore the \remove "Bar_engraver" command is packed into a variable "OptionTwoFalseCommand"
53 | % that can be used multiple times without problems.
54 | CustomTwoCommand = \with { instrumentName = \markup \fontsize %{OOoLilyPondCustom2%}#4 "1.)"%{OOoLilyPondEnd%} }
55 | OptionTwoFalseCommand = \with { %{OOoLilyPondOption2False%}\remove "Bar_engraver"%{OOoLilyPondEnd%} }
56 | OptionThreeFalseCommand = \with { %{OOoLilyPondOption3False%}\remove "Time_signature_engraver"%{OOoLilyPondEnd%} }
57 |
58 | \paper {
59 | paper-width = %{OOoLilyPondLineWidth%}17 \cm%{OOoLilyPondEnd%}
60 | paper-height = %{OOoLilyPondCustom4%}4 \cm%{OOoLilyPondEnd%}
61 |
62 | left-margin = 0
63 | right-margin = 0
64 | top-margin = 0
65 | bottom-margin = 0
66 | print-page-number = ##f
67 |
68 | page-count = 1
69 |
70 | #(define fonts
71 | (make-pango-font-tree
72 | "TeXGyreSchola" ; adjust this font name according to your needs
73 | "TeXGyreHeros" ; adjust this font name according to your needs
74 | "TeXGyreCursor" ; adjust this font name according to your needs
75 | (/ staff-height pt 20)))
76 | } % Those 3 font families have to be installed on your system
77 |
78 |
79 | \header {
80 | tagline = ##f
81 | }
82 |
83 | \layout {
84 | \context {
85 | \Staff
86 | \OptionTwoFalseCommand
87 | \OptionThreeFalseCommand
88 | % \CustomTwoCommand
89 | \override Clef.full-size-change = ##t
90 | }
91 | \context { \DrumStaff \OptionTwoFalseCommand \OptionThreeFalseCommand}
92 | \context { \RhythmicStaff \OptionTwoFalseCommand \OptionThreeFalseCommand}
93 | \context { \TabStaff \OptionTwoFalseCommand \OptionThreeFalseCommand}
94 | \context { \PianoStaff \OptionTwoFalseCommand \OptionThreeFalseCommand \CustomTwoCommand}
95 | \context { \ChoirStaff \OptionTwoFalseCommand \OptionThreeFalseCommand \CustomTwoCommand}
96 | \context { \StaffGroup \OptionTwoFalseCommand \OptionThreeFalseCommand \CustomTwoCommand}
97 | \context {
98 | \Score
99 | % The code between the following two tags will be visible for LilyPond if Option3 is set to TRUE.
100 | % (It will be commented out if Option3 is set to FALSE.)
101 |
102 | %{OOoLilyPondOption3True%}\numericTimeSignature%{OOoLilyPondEnd%}
103 |
104 | % The code between the following two tags will be visible for LilyPond if Option4 is set to FALSE.
105 | % (It will be commented out if Option4 is set to TRUE.)
106 |
107 | %{OOoLilyPondOption4False%}\remove "Bar_number_engraver"%{OOoLilyPondEnd%}
108 |
109 | \override BarNumber.break-visibility = #end-of-line-invisible
110 | \override BarNumber.self-alignment-X = #LEFT
111 | \override BreakAlignment.break-align-orders = #(
112 | make-vector 3 '(
113 | left-edge span-bar breathing-sign staff-bar
114 | clef key-cancellation key-signature time-signature
115 | ))
116 | }
117 | \context {
118 | \Voice
119 | %{OOoLilyPondOption1False%}\remove "Stem_engraver"%{OOoLilyPondEnd%}
120 | }
121 | }
122 |
123 | % The following OOoLilyPond settings would cause compilation errors,
124 | % therefore they must be preceeded by a comment sign (%)!
125 |
126 | % Values (##t or ##f) for CheckBoxes (Option1 ... Option4)
127 |
128 | % %{OOoLilyPondOption1Value%}##t%{OOoLilyPondEnd%}
129 | % %{OOoLilyPondOption2Value%}##t%{OOoLilyPondEnd%}
130 | % %{OOoLilyPondOption3Value%}##t%{OOoLilyPondEnd%}
131 | % %{OOoLilyPondOption4Value%}##f%{OOoLilyPondEnd%}
132 |
133 | % Here you can define new labels for dialog control elements:
134 |
135 | % %{OOoLilyPondCustom1Label%}Indent:%{OOoLilyPondEnd%}
136 | % %{OOoLilyPondCustom2Label%}#Size + "Name"%{OOoLilyPondEnd%}
137 | % %{OOoLilyPondCustom3Label%}Ragged-right%{OOoLilyPondEnd%}
138 | % %{OOoLilyPondCustom4Label%}Image height:%{OOoLilyPondEnd%}
139 | % %{OOoLilyPondOption1Label%}Stems%{OOoLilyPondEnd%}
140 | % %{OOoLilyPondOption2Label%}Bars%{OOoLilyPondEnd%}
141 | % %{OOoLilyPondOption3Label%}Time signature%{OOoLilyPondEnd%}
142 | % %{OOoLilyPondOption4Label%}Bar numbers%{OOoLilyPondEnd%}
143 |
144 | % Even the "Line Width" and "Staff Size" labels can be changed:
145 | % use "OOoLilyPondLineWidthLabel" or "OOoLilyPondStaffSizeLabel" as above.
146 |
--------------------------------------------------------------------------------
/extension/templates/2.12/School Piano Demo.ly:
--------------------------------------------------------------------------------
1 | \include "lilypond-book-preamble.ly"
2 | #(set-global-staff-size #!OOoLilyPondStaffSize!# 20 #!OOoLilyPondEnd!#)
3 |
4 | \layout {
5 | indent = %{OOoLilyPondCustom1%}0 \mm%{OOoLilyPondEnd%}
6 | ragged-right = %{OOoLilyPondCustom3%}##t%{OOoLilyPondEnd%}
7 | }
8 |
9 | % ------------------------------------------------------------
10 | %{OOoLilyPondCode%}{
11 | \new PianoStaff { % ChoirStaff { % StaffGroup {
12 | <<
13 | \new Staff \relative c' {
14 | \clef "treble"
15 | \key c \major % c \minor
16 | \time 4/4
17 |
18 | c4 d e f g2 g
19 | }
20 |
21 | \addlyrics { do re mi fa so so }
22 |
23 | \new Staff \relative c {
24 | \clef "bass"
25 | \key c \major % c \minor
26 | \time 4/4
27 |
28 | c2 c4 d e2 e
29 | }
30 | \addlyrics { do do re mi mi }
31 | >>
32 | }
33 | }
34 |
35 |
36 | \layout {
37 | short-indent = \indent
38 | ragged-last = \ragged-right
39 | }
40 | %{OOoLilyPondEnd%}
41 | % ------------------------------------------------------------
42 |
43 | \include "lilypond-book-preamble.ly"
44 | #(set-global-staff-size #!OOoLilyPondStaffSize!# 20 #!OOoLilyPondEnd!#)
45 |
46 | % #! and !# enclose block comments in scheme.
47 | % just as
48 | % %{ and %} do in LilyPond expressions.
49 |
50 | % In your templates, you can use either of them for tags like "OOoLilyPondStaffSize" etc.
51 | % On compilation, OLy will use scheme block comments for OOoLilyPondStaffSize (as above),
52 | % all other tags will be written with LilyPond block comments.
53 |
54 | % NOTE: A pair of tags cannot be used multiple times in a template!
55 | % Therefore the \remove "Bar_engraver" command is packed into a variable "OptionTwoFalseCommand"
56 | % that can be used multiple times without problems.
57 | CustomTwoCommand = \with { instrumentName = \markup \fontsize %{OOoLilyPondCustom2%}#4 "1.)"%{OOoLilyPondEnd%} }
58 | OptionTwoFalseCommand = \with { %{OOoLilyPondOption2False%}\remove "Bar_engraver"%{OOoLilyPondEnd%} }
59 | OptionThreeFalseCommand = \with { %{OOoLilyPondOption3False%}\remove "Time_signature_engraver"%{OOoLilyPondEnd%} }
60 |
61 | \paper {
62 | line-width = %{OOoLilyPondLineWidth%}17 \cm%{OOoLilyPondEnd%}
63 | }
64 |
65 | \layout {
66 | \context {
67 | \Staff
68 | \OptionTwoFalseCommand
69 | \OptionThreeFalseCommand
70 | % \CustomTwoCommand
71 | \override Clef.full-size-change = ##t
72 | }
73 | \context { \DrumStaff \OptionTwoFalseCommand \OptionThreeFalseCommand}
74 | \context { \RhythmicStaff \OptionTwoFalseCommand \OptionThreeFalseCommand}
75 | \context { \TabStaff \OptionTwoFalseCommand \OptionThreeFalseCommand}
76 | \context { \PianoStaff \OptionTwoFalseCommand \OptionThreeFalseCommand \CustomTwoCommand}
77 | \context { \ChoirStaff \OptionTwoFalseCommand \OptionThreeFalseCommand \CustomTwoCommand}
78 | \context { \StaffGroup \OptionTwoFalseCommand \OptionThreeFalseCommand \CustomTwoCommand}
79 | \context {
80 | \Score
81 | % The code between the following two tags will be visible for LilyPond if Option3 is set to TRUE.
82 | % (It will be commented out if Option3 is set to FALSE.)
83 |
84 | %{OOoLilyPondOption3True%}\numericTimeSignature%{OOoLilyPondEnd%}
85 |
86 | % The code between the following two tags will be visible for LilyPond if Option4 is set to FALSE.
87 | % (It will be commented out if Option4 is set to TRUE.)
88 |
89 | %{OOoLilyPondOption4False%}\remove "Bar_number_engraver"%{OOoLilyPondEnd%}
90 |
91 | \override BarNumber.break-visibility = #end-of-line-invisible
92 | \override BarNumber.self-alignment-X = #LEFT
93 | \override BreakAlignment.break-align-orders =
94 | #(make-vector 3
95 | '( left-edge span-bar breathing-sign staff-bar
96 | clef key-cancellation key-signature time-signature
97 | ))
98 | }
99 | \context {
100 | \Voice
101 | %{OOoLilyPondOption1False%}\remove "Stem_engraver"%{OOoLilyPondEnd%}
102 | }
103 | }
104 |
105 | % The following OOoLilyPond settings would cause compilation errors,
106 | % therefore they must be preceeded by a comment sign (%)!
107 |
108 | % Values (##t or ##f) for CheckBoxes (Option1 ... Option4)
109 |
110 | % %{OOoLilyPondOption1Value%}##t%{OOoLilyPondEnd%}
111 | % %{OOoLilyPondOption2Value%}##t%{OOoLilyPondEnd%}
112 | % %{OOoLilyPondOption3Value%}##t%{OOoLilyPondEnd%}
113 | % %{OOoLilyPondOption4Value%}##f%{OOoLilyPondEnd%}
114 |
115 | % Here you can define new labels for dialog control elements:
116 |
117 | % %{OOoLilyPondCustom1Label%}Indent:%{OOoLilyPondEnd%}
118 | % %{OOoLilyPondCustom2Label%}#Size + "Name"%{OOoLilyPondEnd%}
119 | % %{OOoLilyPondCustom3Label%}Ragged-right%{OOoLilyPondEnd%}
120 | % %{OOoLilyPondOption1Label%}Stems%{OOoLilyPondEnd%}
121 | % %{OOoLilyPondOption2Label%}Bars%{OOoLilyPondEnd%}
122 | % %{OOoLilyPondOption3Label%}Time signature%{OOoLilyPondEnd%}
123 | % %{OOoLilyPondOption4Label%}Bar numbers%{OOoLilyPondEnd%}
124 |
125 | % Even the "Line Width" and "Staff Size" labels can be changed:
126 | % use "OOoLilyPondLineWidthLabel" or "OOoLilyPondStaffSizeLabel" as above.
127 |
--------------------------------------------------------------------------------
/extension/templates/2.12/Voice Exercise [SVG -dcrop].ly:
--------------------------------------------------------------------------------
1 | \transpose %{OOoLilyPondCustom1%}c c%{OOoLilyPondEnd%}
2 | {
3 | %{OOoLilyPondCode%}% Example for music notation with lyrics.
4 | % Smaller notes are used to indicate the targeted pitch range of the exercise
5 | % Documentation about vocal music:
6 | % http://lilypond.org/doc/stable/Documentation/notation/vocal-music
7 |
8 | % Use the "Custom 1" to transpose your music expression. E. g. try "e a'".
9 |
10 | \relative e' {
11 | \time 3/4 \key e \major
12 | e8-. gis-. b-. cis-. b-. gis-.
13 | e8( gis b cis b gis
14 | e2.)
15 | \bar "||"
16 | \set fontSize = #-4
17 | e4 \glissando c'
18 | }
19 | \addlyrics {
20 | o o o o o o
21 | o __ "" ""
22 | }
23 | \addlyrics {
24 | a a a a a a
25 | a __ "" ""
26 | }
27 | %{OOoLilyPondEnd%}
28 | }
29 |
30 | #(set-global-staff-size #!OOoLilyPondStaffSize!# 20 #!OOoLilyPondEnd!#)
31 | #(define version-seen #t)
32 |
33 | \paper {
34 | ragged-right = ##t
35 | line-width = %{OOoLilyPondLineWidth%}17 \cm%{OOoLilyPondEnd%}
36 |
37 | #(define fonts
38 | (make-pango-font-tree
39 | "TeXGyreSchola" ; adjust this font name according to your needs
40 | "TeXGyreHeros" ; adjust this font name according to your needs
41 | "TeXGyreCursor" ; adjust this font name according to your needs
42 | (/ staff-height pt 20)))
43 | } % Those 3 font families have to be installed on your system
44 |
45 | \layout {
46 | indent = #0
47 | \context {
48 | \Score
49 | \remove "Bar_number_engraver"
50 | }
51 | }
52 |
53 | % %{OOoLilyPondCustom1Label%}Transpose:%{OOoLilyPondEnd%}
--------------------------------------------------------------------------------
/extension/templates/2.12/Voice Exercise [SVG].ly:
--------------------------------------------------------------------------------
1 | \transpose %{OOoLilyPondCustom1%}c c%{OOoLilyPondEnd%}
2 | {
3 | %{OOoLilyPondCode%}% Example for music notation with lyrics.
4 | % Smaller notes are used to indicate the targeted pitch range of the exercise
5 | % Documentation about vocal music:
6 | % http://lilypond.org/doc/stable/Documentation/notation/vocal-music
7 |
8 | % Use the "Custom 1" to transpose your music expression. E. g. try "e a'".
9 | % Use the "Custom 2" field for image height of your musical snippet.
10 |
11 | \relative e' {
12 | \time 3/4 \key e \major
13 | e8-. gis-. b-. cis-. b-. gis-.
14 | e8( gis b cis b gis
15 | e2.)
16 | \bar "||"
17 | \set fontSize = #-4
18 | e4 \glissando c'
19 | }
20 | \addlyrics {
21 | o o o o o o
22 | o __ "" ""
23 | }
24 | \addlyrics {
25 | a a a a a a
26 | a __ "" ""
27 | }
28 | %{OOoLilyPondEnd%}
29 | }
30 |
31 | % -------------------------------------------------------
32 |
33 | #(set-global-staff-size #!OOoLilyPondStaffSize!# 20 #!OOoLilyPondEnd!#)
34 | #(define version-seen #t)
35 |
36 | \paper {
37 | paper-width = %{OOoLilyPondLineWidth%}17 \cm%{OOoLilyPondEnd%}
38 | paper-height = %{OOoLilyPondCustom2%}6 \cm%{OOoLilyPondEnd%}
39 | indent = #0
40 | short-indent = \indent
41 | ragged-right = ##t
42 |
43 | left-margin = 0
44 | right-margin = 0
45 | top-margin = 0
46 | bottom-margin = 0
47 | print-page-number = ##f
48 |
49 | page-count = 1
50 |
51 | #(define fonts
52 | (make-pango-font-tree
53 | "TeXGyreSchola" ; adjust this font name according to your needs
54 | "TeXGyreHeros" ; adjust this font name according to your needs
55 | "TeXGyreCursor" ; adjust this font name according to your needs
56 | (/ staff-height pt 20)))
57 | } % Those 3 font families have to be installed on your system
58 |
59 | \header {
60 | tagline = ##f
61 | }
62 |
63 | \layout {
64 | \context {
65 | \Score
66 | \remove "Bar_number_engraver"
67 | }
68 | }
69 |
70 | % %{OOoLilyPondCustom1Label%}Transpose:%{OOoLilyPondEnd%}
71 | % %{OOoLilyPondCustom2Label%}Image height:%{OOoLilyPondEnd%}
--------------------------------------------------------------------------------
/extension/templates/2.12/Voice Exercise.ly:
--------------------------------------------------------------------------------
1 | \transpose %{OOoLilyPondCustom1%}c c%{OOoLilyPondEnd%}
2 | {
3 | %{OOoLilyPondCode%}% Example for music notation with lyrics.
4 | % Smaller notes are used to indicate the targeted pitch range of the exercise
5 | % Documentation about vocal music:
6 | % http://lilypond.org/doc/stable/Documentation/notation/vocal-music
7 |
8 | % Use the "Custom 1" to transpose your music expression. E. g. try "e a'".
9 |
10 | \relative e' {
11 | \time 3/4 \key e \major
12 | e8-. gis-. b-. cis-. b-. gis-.
13 | e8( gis b cis b gis
14 | e2.)
15 | \bar "||"
16 | \set fontSize = #-4
17 | e4 \glissando c'
18 | }
19 | \addlyrics {
20 | o o o o o o
21 | o __ "" ""
22 | }
23 | \addlyrics {
24 | a a a a a a
25 | a __ "" ""
26 | }
27 | %{OOoLilyPondEnd%}
28 | }
29 |
30 | \include "lilypond-book-preamble.ly"
31 | #(set-global-staff-size #!OOoLilyPondStaffSize!# 20 #!OOoLilyPondEnd!#)
32 |
33 | \paper {
34 | ragged-right = ##t
35 | line-width = %{OOoLilyPondLineWidth%}17 \cm%{OOoLilyPondEnd%}
36 | }
37 |
38 | \layout {
39 | indent = #0
40 | \context {
41 | \Score
42 | \remove "Bar_number_engraver"
43 | }
44 | }
45 |
46 | % %{OOoLilyPondCustom1Label%}Transpose:%{OOoLilyPondEnd%}
--------------------------------------------------------------------------------
/old-README.md:
--------------------------------------------------------------------------------
1 | This file is a more or less raw copy of the old introductory web page on
2 | http://ooolilypond.sourceforge.net/
3 |
4 |
5 | # Installation
6 | ## Installing under Windows and Linux
7 |
8 | Make sure that the following software is installed:
9 | - LilyPond 2.10 or newer (older versions may also work)
10 | - OpenOffice.org 2.4 or newer
11 |
12 | Download the newest OOoLilyPond extension (OOoLilyPond-0.x.x.oxt).
13 |
14 | Start OpenOffice.org
15 | Open the extension manager. You find it in the menu “Tools”.
16 |
17 | Click “Add...” and select the downloaded package and install it.
18 |
19 | Open a new Writer, Draw or Impress Document, the OOoLilyPond toolbar appears (at
20 | the moment the only button is “OLy”).
21 |
22 | ## Installing on Mac OS X
23 |
24 | The current release of OOoLilyPond hat not been tested on Mac OS X but it should
25 | work as it works on Linux machines. OLy can also be used in NeoOffice.
26 |
27 | Follow the installation procedures given for Windows or Linux.
28 |
29 | Mac-specific instructions:
30 | - Start OpenOffice.org / NeoOffice - Click the “OLy”-button to bring up the OOoLilyPond window.
31 | - Click the Config button.
32 | - In the field “LilyPond Executable” type “/Applications/LilyPond.app/Contents/Resources/bin/lilypond”.
33 | - Click “OK”.
34 |
35 | # First Steps
36 |
37 | Place the cursor in a Writer document. Click the “OLy”-button in the tool bar to
38 | open the OOoLilyPond Editor.
39 |
40 | Select a template (you can also keep the default).
41 |
42 | Select the Staff Size you like.
43 |
44 | Adjust the line width to the value that corresponds to your Writer document. The default should be OK for A4.
45 |
46 | Click the “LilyPond”-button. This translates the example of the template and
47 | inserts it into the Writer document.
48 |
49 | Select the newly created musical notation object and click the “OLy”-button again.
50 |
51 | The OOoLilyPond editor window opens again with all the settings from last time.
52 | In the large input field, you can change the notes (may be you need to scroll
53 | down to see the code for the notes). For learning the syntax of the LilyPond
54 | language read the LilyPond documentation. I recommend to start with the chapter
55 | Simple notation. Getting Help
56 |
57 | For getting help on how to use or install OOoLilyPond visit the forums .
58 |
59 | For learning the syntax of the LilyPond language read the LilyPond
60 | documentation. Best starting point is the chapter Simple notation. Known Issues
61 |
62 | Using the eps format on Windows does not to work.
63 |
64 | OLy objects copied from Writer into Impress or Draw are not recognized anymore
65 | as OLy objects. The copied objects cannot be edited further. As a work around
66 | open the object to copy in Writer with OLy and select all the code (CTRL-A).
67 | Create a new OLy object in Impress or Draw and paste the copied Code.
68 |
69 | When printing documents containing OOoLilyPond objects in eps format
70 | OpenOffice.org asks if the transperency should be reduced. The right option to
71 | get high quality results is "yes".
72 |
73 | When using OOoLilyPond with the window manager Compiz (default in gnome when
74 | using desktop effects) the OOoLilyPond Window and appear too small. To get
75 | OOoLilyPond working properly switch to the Metacity window manager. You can do
76 | this temporarily with the following command:
77 |
78 | $ metacity --replace
79 |
80 | When using OOoLilyPond you loose the clipbaord contents. This is because
81 | OOoLilyPond uses the clipboard to insert the image. Hopefully this can be
82 | avoided in future versions.
83 |
84 | # FAQ
85 |
86 | When Compiling the code I get the following error:
87 | lilypond: /usr/lib/openoffice/program/libstdc++.so.6: version
88 | 'CXXABI_1.3.1' not found (required by lilypond)
89 |
90 | Edit the lilpond macro code as described in the following:
91 |
92 | In OpenOffice.org from the Menu choose:
93 | Tools --> Marcros --> Organise Macros --> OpenOffice.org Basic
94 | Select under "Macro from": My Macros --> OOoLilyPond --> Subs
95 | Select the Macro "CallLilyPond"
96 | Click Edit
97 |
98 | find the Line:
99 | & Chr(34) & sLilyPondExecutable & Chr(34)
100 |
101 | change it to:
102 | & "env LD_LIBRARY_PATH= " & Chr(34) & sLilyPondExecutable & Chr(34)
103 |
104 | Switch back to OpenOffice.org Writer, start the macro.
105 | Credits
106 |
107 | OOoLilyPond would not exist without the two great softwares LilyPond and
108 | OpenOffice.org. Therefore I like to thank all the developers of OpenOffice.org
109 | and LilyPond. Many thanks also to Geoffroy Piroux who has written the macro
110 | OOoLaTeX. from which OOoLilyPond has been derived. Thanks also to Andy May for
111 | the installation instructions for Mac OS X, to Goran Rakic for providing the
112 | OpenOffice.org extension package and to Hugo Ribeiro, Francisco Villa and Daniel
113 | Cartron for translating the web page into portuguese, spanish and french.
114 |
--------------------------------------------------------------------------------
/translation/de.yaml:
--------------------------------------------------------------------------------
1 | # German translation for OOoLilyPond extension
2 | description: |-
3 | OOoLilyPond ermöglicht es musikalische Noten in OpenOffice.org oder
4 | LibreOffice Writer-, Draw- und Impress-Documenten einzubinden.
5 | Der musikalische Ausdruck wird as Text eingegeben und dann mit LilyPond
6 | in ein Grafikobjekt (png, eps oder svg) umgewandelt und eingebunden.
7 |
8 | http://ooolilypond.sf.net
9 | http://lilypond.org
10 |
11 | Copyright (c) 2006-2009 Samuel Hartmann (samuel_hartmann@users.sourceforge.net)
12 | Copyright (c) 2017 Klaus Blum
13 | Übersetzung: Joram Berger
14 |
15 | # Ask
16 | 'Yes': Ja
17 | CommandButton1: Befehl1
18 | 'No': Nein
19 | Abort: Abbrechen
20 | All: Alles
21 | Do you want to process this object?: Möchten Sie dieses Objekt verarbeiten?
22 |
23 | # main window
24 | Default Code: Zurücksetzen
25 | Anchor: Verankerung
26 | As Character: Als Zeichen
27 | To Paragraph: Am Absatz
28 | To Page: An Seite
29 | Wrap: Textumlauf
30 | No Wrap: kein Umlauf
31 | Optimal Page Wrap: beide Seiten
32 | Wrap Through: durchlaufend
33 | Template: Vorlage
34 | Edit: Bearb.
35 | Line Width: Zeilenbreite
36 | Staff Size: Größe
37 | Custom 1: Extra 1
38 | Custom 2: Extra 2
39 | Default: Standard
40 | Ly Output: Ausgabe
41 | Config: Optionen
42 | Open as temp. file in Ext. Editor: In externem Editor öffnen
43 | Import from temp. file: Import aus externer Datei
44 | 'Keep Size & Crop Settings': Größe und Zuschnitt beibehalten
45 |
46 | Reset all values to default: Alle Einstellungen zurücksetzen
47 | Reset to Default: Zurücksetzen
48 | Restore Templates: Vorlagen wiederherstellen
49 | Template Path: Vorlagenpfad
50 | Format: Format
51 | Resolution (png): Auflösung (png)
52 | Default template to use for OOoLilyPond objects in Writer documents: Standardvorlage für Noten in Textdokumenten (Writer)
53 | Insert Images via Clipboard. Recommended for OpenOffice.: Noten über Zwischenablage einfügen (empfohlen für OpenOffice).
54 | Insert Images without Clipboard use. Recommended for LibreOffice.: Noten ohne Zwischenablage einfügen (empfohlen für LibreOffice).
55 | Direct (LibreOffice): Direkt (LibreOffice)
56 | Via Clipboard (OpenOffice): Über Zwischenablage (OpenOffice)
57 | From Template: Aus Vorlage
58 |
59 | # template editor
60 | Save: Speichern
61 | Save As: Speichern unter
62 | Delete: Löschen
63 | Cancel: Abbrechen
64 |
65 | # help text
66 | The OOoLilyPond object is inserted into the Text like a character.: Die Noten werden wie ein Schriftzeichen eingefügt und damit fest im Text positioniert.
67 | The OOoLilyPond object is inserted like an image and can be placed freely. The object keeps the position relative to the paragraph.: Die Noten werden wie ein Bild eingefügt und können frei positioniert werden. Sie behalten ihre Position relativ zum Absatz.
68 | The OOoLilyPond object is inserted like an image and can be placed freely. The object keeps the position relative to the page.: Die Noten werden wie ein Bild eingefügt und können frei positioniert werden. Sie behalten ihre Position relativ zur Seite.
69 | The text is not flowing around the OOoLilyPond object.: Der Text umfließt die Noten nicht.
70 | The text is flowing on the right or left side of the OOoLIlyPond object.: Der Text umfließt die Noten links oder rechts.
71 | The text is flowing through the OOoLilyPond object.: Der Text fließt durch die Noten.
72 | Open the configuration dialog.: Einstellungen öffnen.
73 | Previous error or warning: Vorherige Fehlermeldung oder Warnung
74 | Next error or warning: Nächste Fehlermeldung oder Warnung
75 | You can create your own templates using a text editor.: Eigene Templates erstellen.
76 | Open the current code as temoprary .LY file in external editor: Den aktuellen Code als temporäre .ly-Datei in externem Editor öffnen
77 | Import the temporary file from the external editor: Die Datei aus externem Editor übernehmen.
78 | When editing/replacing an existing object, preserve its current size and crop settings: Aktuelle Größe und aktuellen Zuschnitt der eingefügten Noten beibehalten auch wenn der Inhalt sich ändert.
79 |
80 | # GUI Config
81 | Default Values for Writer: Standardeinstellungen für Writer
82 | Default Values for Impress and Draw: Standardeinstellungen für Impress und Draw
83 | Apply and save configuration to file: Einstellungen anwenden und speichern
84 | The path where OOoLiliyPond looks for templates.: Der Pfad in dem die Erweiterung nach Vorlagen sucht.
85 | The LilyPond executable with or without path.: Das LilyPond-Programm (mit oder ohne Pfad).
86 | Resolution for pixel based (png-format) OOoLilyPond objects.: Auflösung für Noten im PNG-Format.
87 | The png format looks better on the screen. The eps and svg formats are optimized for printing.: Das PNG-Format sieht auf dem Bildschirm besser aus. Das EPS- und SVG-Format ist für den Druck optimiert.
88 | 'Don't list warnings along with LilyPond's error messages': Keine Warnungen anzeigen, nur Fehlermeldungen.
89 | Ext. Editor Executable: Externer Editor
90 | The external Editor's executable with or without path.: Die Programmdatei des externen Editors (mit oder ohne Pfad).
91 | Include statement(s): Include statement(s)
92 | The path(s) where LilyPond looks for include files (multiple statements possible): Der Pfad, in dem LilyPond nach Dateien zum Einbinden sucht (mehrere möglich)
93 | -I"path1" -I"path2" ...: '-I"pfad1" -I"pfad2" ...'
94 | Editor Font Name: Editor-Schriftart
95 | Size: Größe
96 | Specify the font name for the editor pane: Name der Schriftart im Editorfenster
97 | Specify the font size for the editor pane: Größe der Schriftart im Editorfenster
98 | Insert Images: Bilder einfügen
99 | 'eps: Only with OpenOffice': 'EPS: Nur mit OpenOffice'
100 | 'svg: Only with LibreOffice, use Template': 'SVG: Nur mit LibreOffice'
101 |
102 | # Process
103 | Code: Code
104 | Process: Prozess
105 |
106 | # Messages
107 | The folder: Der Ordner
108 | is created.: wurde erstellt.
109 | It contains the: Er beinhaltet die
110 | templates you can modify. The original templates can always be restored while your modified templates are backed up. For this use the: '-Vorlagen, die Sie abändern können. Die ursprünglichen Vorlagen können jederzeit wiederhergestellt werden, wobei von Ihren abgeänderten Vorlagen eine Sicherungskopie erstellt wird. Nutzen Sie hierfür den'
111 | restore templates: Vorlagen wiederherstellen
112 | button in the configuration dialog.: '-Knopf im Optionen-Dialog.'
113 |
114 | The specified path for templates does not exist and cannot be created: Der angegebene Pfad für die Vorlagen existiert nicht und konnte auch nicht erstellt werden
115 | Please adjust the path in the configuration dialog.: Bitte geben Sie im Optionen-Dialog den richtigen Pfad an.
116 |
117 | Your old templates are backed up under: Eine Sicherungskopie Ihrer bisherigen Vorlagen befindet sich jetzt in
118 | Templates Backup: Sicherungskopie der Vorlagen
119 | No templates are found at the path: Im angegebenen Pfad wurden keine Vorlagen gefunden
120 | will not work without a template.: wird ohne Vorlage nicht funktionieren.
121 |
122 | The template path: Der Vorlagenordner
123 | is not found.: wurde nicht gefunden.
124 |
125 | Warning: Warnung
126 | Error: Fehler
127 |
128 | No valid file name / path for External Editor is specified.: Für den externen Editor wurde kein gültiger Dateiname / Pfad angegeben.
129 |
130 | Are you sure?: Sind Sie sicher?
131 | Do you really want to reset your code to the default?: Möchten Sie wirklich Ihren Code auf die Standardvorgabe zurücksetzen?
132 |
133 | LilyPond cannot be executed.: LilyPond kann nicht ausgeführt werden.
134 | Check the path specified for the lilypond executable in the configuration dialog,: Überprüfen Sie den Pfad, der im Optionen-Dialog für die LilyPond-Programmdatei angegeben ist,
135 | your LilyPond installation and permissions.: die LilyPond-Installation und Ihre Berechtigungen.
136 |
137 | The LilyPond output file does not exist: Die LilyPond-Ausgabedatei existiert nicht
138 | ': document type not supported by': ': Dokumente dieses Typs werden nicht unterstützt von'
139 |
140 | LilyPond can not be found. Please check whether LilyPond is properly installed: LilyPond kann nicht gefunden werden. Bitte überprüfen Sie, ob LilyPond richtig istalliert ist
141 | and the specified path to the LilyPond executable is correct.: und ob der angegebene Pfad zur Programmdatei korrekt ist.
142 |
143 | The selected object is not an OLy object ...: Das ausgewählte Objekt ist kein OLy-Objekt ...
144 |
145 | Enter LilyPond code...: Geben Sie Code für LilyPond ein..
146 |
147 | No eps output is found: Keine eps-Ausgabedatei gefunden
148 | No png output is found: Keine png-Ausgabedatei gefunden
149 | No svg output is found: Keine svg-Ausgabedatei gefunden
150 |
151 | 'No " & constOLyLibraryName & " tags found in the template!': 'Keine " & constOLyLibraryName & " Tags in der Vorlage gefunden!'
152 |
153 | 'Template error: missing end tag': 'Fehler in der Vorlage: fehlender End-Tag'
154 | for tag: für Tag
155 |
156 | Cannot open the template file: Kann die Vorlage nicht öffnen
157 |
158 | corresponding end tag for: Der entsprechende End-Tag für
159 | is missing or misspelled.: fehlt oder ist falsch geschrieben
160 |
161 | The selected template does not have an OOoLilyPondCode tag.: Die gewählte Vorlage hat keinen OOoLilyPondCode-Tag.
162 | Please correct the template.: Bitte korrigieren Sie die Vorlage.
163 |
164 | Cannot open the temporary file: Kann die temporäre Datei nicht öffnen
165 | The temporary file does not have an OOoLilyPondCode tag.: Die temporäre Datei hat keinen OOoLilyPondCode-Tag.
166 |
167 | Cannot delete the template file: Kann Vorlagen-Datei nicht löschen
168 | You have deleted a default template. Please choose another default template in the configuration dialogue: Sie haben eine Standardvorlage gelöscht. Bitte wählen Sie im Optionen-Dialog eine andere Standardvorlage
169 |
170 | New template name: Neuer Name für Vorlage
171 | Please enter a new template name and click OK.: Bitte geben Sie für die Vorlage einen neuen Namen ein, und klicken Sie OK.
172 |
173 | Cannot write to file: Fehler beim Schreiben in die Datei
174 |
175 | 'ImportBitmapIntoWriter: the second argument must be either a TextCursor or a TextGraphic.': 'ImportBitmapIntoWriter: Das zweite Argument muss entweder TextCursor oder TextGraphic sein.'
176 |
--------------------------------------------------------------------------------
/translation/fr.yaml:
--------------------------------------------------------------------------------
1 | # German translation for OOoLilyPond extension
2 | description: |-
3 | OOoLilyPond permet d’intégrer des fragments de notation musicale dans
4 | des documents texte, graphiques ou diaporamas avec OpenOffice.org ou
5 | LibreOffice. La gravure musicale est saisie sous forme de code source
6 | puis compilée par LilyPond pour aboutir à un objet graphique, vectoriel
7 | ou non (au format png, eps ou svg).
8 |
9 | http://ooolilypond.sf.net
10 | http://lilypond.org
11 |
12 | Copyright (c) 2006-2009 Samuel Hartmann (samuel_hartmann@users.sourceforge.net)
13 | Copyright (c) 2017 Klaus Blum
14 | Traduction : Valentin Villenave
15 |
16 | # Ask
17 | 'Yes': Oui
18 | CommandButton1: Commande1
19 | 'No': Non
20 | Abort: Annuler
21 | All: Tout
22 | Do you want to process this object?: Voulez-vous traiter cet objet ?
23 |
24 | # main window
25 | Default Code: "Réinitialiser"
26 | Anchor: Ancre
27 | As Character: "Comme caractère"
28 | To Paragraph: Au paragraphe
29 | To Page: "À la page"
30 | Wrap: Adaptation du texte
31 | No Wrap: "Pas d'adaptation"
32 | Optimal Page Wrap: Optimale
33 | Wrap Through: Continue
34 | Template: "Modèle :"
35 | Edit: Modifier
36 | Line Width: "Largeur :"
37 | Staff Size: "Taille :"
38 | Custom 1: "Propriété 1"
39 | Custom 2: "Propriété 2"
40 | Default: Standard
41 | Ly Output: Messages
42 | Config: "Réglages"
43 | Open as temp. file in Ext. Editor: "Ouvrir dans l'éditeur externe"
44 | Import from temp. file: Importer depuis le fichier temporaire
45 | 'Keep Size & Crop Settings': Conserver la taille et le recadrage
46 |
47 | Reset all values to default: "Tout réinitialiser"
48 | Reset to Default: "Réinitialiser"
49 | Restore Templates: "Restaurer les modèles"
50 | Template Path: "Emplacement des modèles"
51 | Format: "Format :"
52 | Resolution (png): "Résolution (png) :"
53 | Default template to use for OOoLilyPond objects in Writer documents: "Modèle par défaut à utiliser pour les objets OOoLilyPond dans les documents texte"
54 | Insert Images via Clipboard. Recommended for OpenOffice.: "Insérer les images par le presse-papier ; recommandé pour OpenOffice."
55 | Insert Images without Clipboard use. Recommended for LibreOffice.: "Insérer les images sans utiliser le presse-papier ; recommandé pour LibreOffice."
56 | Direct (LibreOffice): Directement (LibreOffice)
57 | Via Clipboard (OpenOffice): Par le presse-papier (OpenOffice)
58 | From Template: "Déf. du modèle"
59 |
60 | # template editor
61 | Save: Enregistrer
62 | Save As: "Enregistrer sous…"
63 | Delete: Supprimer
64 | Cancel: Annuler
65 |
66 | # help text
67 | The OOoLilyPond object is inserted into the Text like a character.: "L'objet OOoLilyPond sera inséré dans le texte comme un caractère ordinaire."
68 | The OOoLilyPond object is inserted like an image and can be placed freely. The object keeps the position relative to the paragraph.: "L'object OOoLilyPond sera inséré comme une image et peut être placé librement ; il conservera sa position par rapport au paragraphe."
69 | The OOoLilyPond object is inserted like an image and can be placed freely. The object keeps the position relative to the page.: "L'object OOoLilyPond sera inséré comme une image et peut être placé librement ; il conservera sa position par rapport à la page."
70 | The text is not flowing around the OOoLilyPond object.: "Le texte ne se poursuivra pas autour de l'objet OOoLilyPond."
71 | The text is flowing on the right or left side of the OOoLIlyPond object.: "Le texte se poursuivra à droite ou à gauche de l'objet OOoLilyPond."
72 | The text is flowing through the OOoLilyPond object.: "Le texte se poursuivra à travers l'objet OOoLilyPond."
73 | Open the configuration dialog.: "Ouvrir la sous-fenêtre de configuration"
74 | Previous error or warning: "Erreur ou avertissement précédent⋅e"
75 | Next error or warning: "Erreur ou avertissement suivant⋅e"
76 | You can create your own templates using a text editor.: "Vous pouvez créer vos propres modèles avec un éditeur de texte."
77 | Open the current code as temoprary .LY file in external editor: "Ouvrir le code actuel en tant que fichier .ly temporaire dans l'éditeur externe"
78 | Import the temporary file from the external editor: Remplacer le code actuel par celui du fichier temporaire.
79 | When editing/replacing an existing object, preserve its current size and crop settings: Pour modifier ou remplacer un objet existant en conservant sa taille et son recadrage.
80 |
81 | # GUI Config
82 | Default Values for Writer: "Valeurs par défaut pour le Traitement de texte"
83 | Default Values for Impress and Draw: "Valeurs par défaut pour les graphiques et diaporamas"
84 | Apply and save configuration to file: "Appliquer et enregistrer les réglages."
85 | The path where OOoLiliyPond looks for templates.: "L'emplacement où OOoLilyPond peut trouver des fichiers de modèles."
86 | The LilyPond executable with or without path.: "L'emplacement de l'exécutable LilyPond (le chemin complet peut être omis)."
87 | Resolution for pixel based (png-format) OOoLilyPond objects.: "Résolution pour les objets OOoLilyPond pixelisés (format png)."
88 | The png format looks better on the screen. The eps and svg formats are optimized for printing.: "Le format png peut sembler plus lisse à l'écran. Les formats vectoriels (eps ou svg) sont recommandés pour les documents imprimables."
89 | 'Don't list warnings along with LilyPond's error messages': "Ne pas inclure les avertissements parmi les messages d'erreur de LilyPond."
90 | Ext. Editor Executable: "Exécutable pour l'éditeur externe :"
91 | The external Editor's executable with or without path.: "L'emplacement de l'éditeur externe (Frescobaldi ou autre)."
92 | Include statement(s): "Dossiers d'inclusion :"
93 | The path(s) where LilyPond looks for include files (multiple statements possible): "Les emplacements où LilyPond doit chercher des fichiers à inclure (il est possible d'en indiquer plusieurs)."
94 | -I"path1" -I"path2" ...: '-I"chemin" -I"autre" ...'
95 | Editor Font Name: "Police de l'éditeur :"
96 | Size: "Taille :"
97 | Specify the font name for the editor pane: "Indiquez le nom de la police utilisée pour le code source."
98 | Specify the font size for the editor pane: "Indiquez la taille de police utilisée pour le code source."
99 | Insert Images: "Insérer les images"
100 | 'eps: Only with OpenOffice': 'eps: Seulement pour OpenOffice'
101 | 'svg: Only with LibreOffice, use Template without': 'svg: Seulement pour LibreOffice ; utiliser un modèle sans'
102 |
103 | # Process
104 | Code: Code
105 | Process: Compilation
106 |
107 | # Messages
108 | The folder: Le dossier
109 | is created.: "a été créé."
110 | It contains the: "Il contient des modèles"
111 | templates you can modify. The original templates can always be restored while your modified templates are backed up. For this use the: ', que vous pouvez adapter. Les modèles d'origine peuvent toujours être récupérés tandis que vos modèles modifiés seront sauvegardés. Pour ce faire, veuillez utiliser le bouton'
112 | restore templates: "«Restaurer les modèles»"
113 | button in the configuration dialog.: 'dans la sous-fenêtre de configuration.'
114 |
115 | The specified path for templates does not exist and cannot be created: "L'emplacement indiqué pour les modèles n'existe pas et ne peut être créé :"
116 | Please adjust the path in the configuration dialog.: "Veuillez rectifier l'emplacement dans la sous-fenêtre de configuration."
117 |
118 | Your old templates are backed up under: "Vos modèles précédents ont été sauvegardés ici :"
119 | Templates Backup: "Sauvegarde des modèles"
120 | No templates are found at the path: "Aucun modèle n'a été trouvé à l'emplacement indiqué :"
121 | will not work without a template.: "ne peut fonctionner sans modèle."
122 |
123 | The template path: "Le dossier de modèles
124 | is not found.: n'a pas été trouvé."
125 |
126 | Warning: Avertissement
127 | Error: Erreur
128 |
129 | No valid file name / path for External Editor is specified.: "Aucun emplacement/nom de fichier valide n'a été indiqué pour l'éditeur externe."
130 |
131 | Are you sure?: Voulez-vous confirmer ?
132 | Do you really want to reset your code to the default?: "Voulez-vous vraiment remplacer votre code par le code par défaut ?"
133 |
134 | LilyPond cannot be executed.: "LilyPond ne peut pas être lancé."
135 | Check the path specified for the lilypond executable in the configuration dialog,: "Veuillez vérifier l'emplacement indiqué pour l'exécutable «lilypond» dans la sous-fenêtre de configuration. "
136 | your LilyPond installation and permissions.: "Vérifiez également votre installation de LilyPond et les permissions dont vous disposez."
137 |
138 | The LilyPond output file does not exist: "Le fichier de messages de sortie de LilyPond n'existe pas :"
139 | ': document type not supported by': ' : Ce type de document n'est pas pris en charge par'
140 |
141 | LilyPond can not be found. Please check whether LilyPond is properly installed: "LilyPond n'a pu être trouvé. Veuillez vérifier que LilyPond est installé correctement,"
142 | and the specified path to the LilyPond executable is correct.: "et que l'exécutable «lilypond» se trouve bien à l'emplacement indiqué."
143 |
144 | The selected object is not an OLy object ...: "L'objet actuellement sélectionné n'est pas un objet OLy…"
145 |
146 | Enter LilyPond code...: "Veuillez entrer du code LilyPond…"
147 |
148 | No eps output is found: "Aucun rendu EPS n'a été trouvé."
149 | No png output is found: "Aucun rendu PNG n'a été trouvé."
150 | No svg output is found: "Aucun rendu SVG n'a été trouvé."
151 |
152 | 'No " & constOLyLibraryName & " tags found in the template!': 'Aucune balise " & constOLyLibraryName & " n'a été trouvée dans le modèle !'
153 |
154 | 'Template error: missing end tag': 'Erreur dans le modèle : balise de fermeture absente'
155 | for tag: pour la balise
156 |
157 | Cannot open the template file: "Impossible d'ouvrir le fichier de modèle :"
158 |
159 | corresponding end tag for: "La balise de fin qui devrait correspondre à"
160 | is missing or misspelled.: "est absente ou mal orthographiée"
161 |
162 | The selected template does not have an OOoLilyPondCode tag.: "Aucune balise OOoLilyPondCode trouvée dans le modèle sélectionné !"
163 | Please correct the template.: "Veuillez corriger le fichier :"
164 |
165 | Cannot open the temporary file: "Impossible d'ouvrir le fichier LilyPond temporaire :"
166 | The temporary file does not have an OOoLilyPondCode tag.: "Le fichier temporaire ne contient aucune balise OOoLilyPond !"
167 |
168 | Cannot delete the template file: "Impossible de supprimer le fichier de modèle :"
169 | You have deleted a default template. Please choose another default template in the configuration dialogue: "Vous avez supprimé un des modèles par défaut. Veuillez choisir un autre modèle par défaut dans la sous-fenêtre de configuration."
170 |
171 | New template name: "Nouveau nom du modèle"
172 | Please enter a new template name and click OK.: "Veuillez saisir un nouveau nom pour le modèle, puis validez."
173 |
174 | Cannot write to file: "Impossible d'écrire dans le fichier"
175 |
176 | 'ImportBitmapIntoWriter: the second argument must be either a TextCursor or a TextGraphic.': 'ImportBitmapIntoWriter : le deuxième argument devrait être un TextCursor ou un TextGraphic.'
177 |
--------------------------------------------------------------------------------
/translation/readme.md:
--------------------------------------------------------------------------------
1 | # Translation Tool
2 |
3 | This simple tool is used to translate the LibreOffice extension for LilyPond in other languages. Currently, French and German are the only available translations.
4 |
5 |
6 | ## Requirements
7 |
8 | The tool requires *Python 3* including these packages: *glob*, *shutil* and *yaml*.
9 |
10 |
11 | ## Usage
12 |
13 | The translation tool is run from the root directory. A [language code] *lang* must be provided as argument:
14 |
15 | translation/translate.py
16 |
17 | For example:
18 |
19 | translation/translate.py de
20 |
21 | It uses the translation given in the file *lang*.yaml in the [yaml] format. For the translation purposes this format is simply:
22 |
23 | original English text: translated text
24 |
25 | After running the script, the translated version of the extension code will be located at the translation/extension-*lang* subdirectory. It can be zipped to build a translated extension just like the original extenion.
26 |
27 | The whole process is automated in the [Makefile]:
28 |
29 | make de
30 |
31 | ## Adding new languages
32 |
33 | For new translations, just copy [de.yaml] to *language-code*.yaml and replace the German translations after the colon by the correct translation in this language.
34 |
35 | [language code]: https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes
36 | [yaml]: https://en.wikipedia.org/wiki/YAML
37 | [Makefile]: ../Makefile
38 | [de.yaml]: de.yaml
39 |
--------------------------------------------------------------------------------
/translation/translate.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env python3
2 | """
3 | Translation tool for the LilyPond LibreOffice extension
4 |
5 | Usage: translation/translate.py
6 | Example: translation/translate.py de
7 | """
8 |
9 | import glob
10 | import re
11 | import shutil
12 | import sys
13 | import yaml
14 |
15 |
16 | def translate(language):
17 | """translate the current extension code to the given language"""
18 | # create a copy of the extension folder for the given language
19 | langdir = 'translation/extension-%s' % language
20 | shutil.rmtree(langdir, ignore_errors=True)
21 | shutil.copytree('extension', langdir)
22 |
23 | # replace english strings with translated strings in this copy
24 | translatedescription('%s/pkg-desc/pkg-description.txt' % langdir, language)
25 | notfound = None
26 | for filename in glob.glob('%s/OOoLilyPond/*.x??' % langdir):
27 | notfound = translatefile(filename, language, notfound)
28 |
29 | # show replacement strings which were not found
30 | notfound.remove('description')
31 | if notfound:
32 | print("Warning: These strings were not found:")
33 | for line in notfound:
34 | print(" %r" % line)
35 |
36 | def translatefile(filename, language, notfound):
37 | """translate a file using the dictionary in .yaml"""
38 | patterns = ['dlg:value="%s"', 'dlg:value="%s:"', 'dlg:help-text="%s"',
39 | '"%s"', '"%s "', '" %s"', '" %s "',
40 | '"%s:"','"%s: "']
41 |
42 | with open('translation/%s.yaml' % language) as f:
43 | dictionary = yaml.load(f)
44 |
45 | if notfound is None:
46 | notfound = list(dictionary.keys())
47 | with open(filename) as f:
48 | text = f.read()
49 |
50 | for original in reversed(sorted(dictionary)):
51 | translation = dictionary[original]
52 | if not isinstance(original, str):
53 | print("Warning: bad type %r for entry: %s" % (type(original), original))
54 | for pattern in patterns:
55 | if (pattern % original) in text and original in notfound:
56 | notfound.remove(original)
57 | text = text.replace(pattern % original, pattern % translation)
58 |
59 | with open(filename, 'w') as f:
60 | f.write(text)
61 | return notfound
62 |
63 | def translatedescription(filename, language):
64 | """Translate description file"""
65 | with open('translation/%s.yaml' % language) as f:
66 | dictionary = yaml.load(f)
67 |
68 | with open(filename, 'w') as f:
69 | f.write(dictionary['description'])
70 |
71 | translate(language=sys.argv[1])
72 |
--------------------------------------------------------------------------------
/update/ooolilypond-update.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 | OOoLilyPond
14 |
15 |
16 |
--------------------------------------------------------------------------------
/update/readme.md:
--------------------------------------------------------------------------------
1 | ## Receiving updates for OOoLilyPond
2 |
3 | | ANNOUNCEMENT |
4 | | :---: |
5 | | OOoLilyPond has moved to a new repository: |
6 | | **https://github.com/OOoLilyPond** |
7 | | All past/present/future development can be found at the new location. The page you are viewing right here contains all development up to V. 1.0.1, but it will no longer be maintained. |
8 |
9 | OOoLilyPond 0.5.0 (and later versions) will specify *ooolilypond-update.xml* in this directory as information source about newer versions.
10 |
11 | ooolilypond-update.xml contains a download URL to the most recent *.oxt file.
12 |
13 | This will enable the extension manager of LibreOffice / OpenOffice to inform the user about new versions and perform the update process on request.
14 |
--------------------------------------------------------------------------------
/update/release-notes.txt:
--------------------------------------------------------------------------------
1 | It seems that updating via the extension manager does NOT work at the moment.
2 | You can download the most recent version at
3 | https://github.com/OOoLilyPond/OOoLilyPond/wiki/Downloads
4 | and open it in LibreOffice / OpenOffice.
5 |
6 | direct link for LibreOffice:
7 | https://github.com/OOoLilyPond/OOoLilyPond/releases/download/v1.1.10/OOoLilyPond-1.1.10.oxt
8 | direct link for OpenOffice:
9 | https://github.com/OOoLilyPond/OOoLilyPond/releases/download/v1.1.10/OOoLilyPond-1.1.10_for_Apache_OpenOffice.oxt
10 |
11 |
12 | **********************************************
13 | OOoLilyPond Version History (March 2024):
14 | **********************************************
15 |
16 | Complete documentation:
17 | https://github.com/OOoLilyPond/OOoLilyPond/wiki#ooolilypond
18 |
19 |
20 |
21 | Changes to OOoLilyPond 1.1.10 since 1.1.9 (March 2024):
22 | =======================================================
23 |
24 | * Bugfix: When using the 'add missing "pt" unit' feature, certain svg files larger than 32767 bytes
25 | could cause OLy to abort with an "Overflow" runtime error.
26 |
27 | * Improvement: An svg file is only re-written if a "pt" unit had to be added.
28 | If nothing has been changed, there are no more unnecessary write operations.
29 |
--------------------------------------------------------------------------------