summaryrefslogtreecommitdiff
path: root/support
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2021-01-24 03:03:37 +0000
committerNorbert Preining <norbert@preining.info>2021-01-24 03:03:37 +0000
commit9456871cc89612c1f974af157f0ed08b9630c4c6 (patch)
tree776886b7d8b9cbf30f5c5a12f575a879829dd4fe /support
parentfcf66e0c8c8c0f5d590d5ac4411b13977aef8a30 (diff)
CTAN sync 202101240303
Diffstat (limited to 'support')
-rwxr-xr-xsupport/xml2pmx/MacOS/xml2pmxbin134924 -> 139408 bytes
-rw-r--r--support/xml2pmx/README65
-rw-r--r--support/xml2pmx/doc/Readme.XML2PMX161
-rw-r--r--support/xml2pmx/doc/xml2pmx.116
-rw-r--r--support/xml2pmx/doc/xml2pmx.pdfbin16563 -> 17546 bytes
5 files changed, 155 insertions, 87 deletions
diff --git a/support/xml2pmx/MacOS/xml2pmx b/support/xml2pmx/MacOS/xml2pmx
index 90a4de323c..18c1569b10 100755
--- a/support/xml2pmx/MacOS/xml2pmx
+++ b/support/xml2pmx/MacOS/xml2pmx
Binary files differ
diff --git a/support/xml2pmx/README b/support/xml2pmx/README
index 6cb7b5249a..538e03dced 100644
--- a/support/xml2pmx/README
+++ b/support/xml2pmx/README
@@ -1,4 +1,4 @@
-xml2pmx, version 2020-08-12.
+xml2pmx, version 2021-01-23.
Summary: xml2pmx translates MusicXML into PMX notation.
@@ -12,10 +12,11 @@ is an easy to use, yet powerful preprocessor
for the music typesetting system MusiXTeX.
http://icking-music-archive.org/software/htdocs/
-xml2pmx has been developed by Dieter
-Gloetzel with the "Oberon Plugin for Windows
-Version 2.5" of ETHZ Zurich on Windows 10.
+xml2pmx has been developed by Dieter Gloetzel with the "Oberon Plugin
+for Windows Version 2.5" of ETHZ Zurich on Windows 10
https://github.com/Spirit-of-Oberon/ETH-Oberon-PlugIn-Win32
+and OLR (Oberon Linux Revival)
+http://oberon.wikidot.com/oberon-linux-revival-olr
Coverage of MusicXML by xml2pmx
*******************************
@@ -23,21 +24,25 @@ Coverage of MusicXML by xml2pmx
The following MusicXML features are detected and translated
to PMX:
-- maximum of 24 staves/voices and 400 measures
-- two voices per staff
-- maximum of two staves per instrument
-- notes and rests up to 64th, including tuplets and grace notes,
-- maximum of 2 dots
-- chords, accidentals
-- some annotations like Fermata, Staccato, Tremolo etc.
-- ties, slurs and beams
-- definition of meter, fifths, clefs and their changes on the fly
-- dynamic marks: hairpins, "ff" etc., piano damping pedal
-- title and composer, and texts above or below the staff
-- barlines, repeats, volta
-- instrument names,
-- origin of XML file copied to the resulting PMX file
-- accepts Windows files (records ended by 0DX OAX)
+The following MusicXML features are detected and translated to PMX:
+
+ - up to 24 staves/voices and 600 bars
+ - up to 83 notes per instrument and bar
+ - two voices per staff
+ - maximum of two staves per instrument
+ - notes and rests up to 64th, including tuplets and grace notes,
+ - maximum of 2 dots
+ - chords, accidentals
+ - some annotations like Fermata, Staccato, Tremolo etc.
+ - ties, slurs and beams
+ - definition of meter, fifths, clefs and their changes on the fly
+ - dynamic marks: hairpins, "ff" etc., piano damping pedal
+ - title and composer, and texts above or below the staff
+ - barlines, repeats, volta
+ - instrument names
+
+Windows and Unix line terminations are accepted. UTF-16
+input is not accepted.
This package is based on a runtime system developed by Mike
Spivey (mike(at)cs.ox.ac.uk) as part of the Oxford Oberon
@@ -52,8 +57,8 @@ relevant folders.
To build and install an executable xml2pmx on a system
with conventional development tools:
- tar xvf xml2pmx-2020-08-12.tar.gz
- cd xml2pmx-2020-08-12
+ tar xvf xml2pmx-2021-01-23.tar.gz
+ cd xml2pmx-2021-01-23
./configure
make
sudo make install
@@ -73,25 +78,25 @@ If it is necessary to edit the resulting pmx file, use the
Licencing
*********
-The source files for xml2pmx are Copyright 2015-2020 by
+The source files for xml2pmx are Copyright 2015-2021 by
Dieter Gloetzel (d.gloetzel(a)web.de) and the source files
-for the runtime system are Copyright 2020 by Mike Spivey
+for the runtime system are Copyright 2021 by Mike Spivey
(mike(a)cs.ox.ac.uk). They may be modified and distributed
according to the terms of the GNU General Public Licence
version 3 or at your option any later version.
-musixtex.lua is Copyright 2011-2020 by Bob
+musixtex.lua is Copyright 2011-2021 by Bob
Tennent (rdt(a)cs.queensu.ca) and Dirk Laurie
-(dirk.laurie(at)gmail.com). It may be modified and distributed
-according to the terms of the GNU General Public Licence
-version 2 or at your option any later version.
+(dirk.laurie(at)gmail.com). It may be modified and
+distributed according to the terms of the GNU General Public
+Licence version 2 or at your option any later version.
This README and the man pages xml2pmx.1 and musixtex.1 were
written by Bob Tennent and may be modified and distributed
according to the terms of the LaTeX Project Public License.
-Please report problems with the executables or the Linux
-build system to Bob Tennent (rdt(a)cs.queensu.ca). Problems
-with the XML to PMX translation should be reported to Dieter
+Please report problems with the executables or the build
+system to Bob Tennent (rdt(a)cs.queensu.ca). Problems with
+the XML to PMX translation should be reported to Dieter
Gloetzel (d.gloetzel(at)web.de).
diff --git a/support/xml2pmx/doc/Readme.XML2PMX b/support/xml2pmx/doc/Readme.XML2PMX
index 04165c2269..75024a33b4 100644
--- a/support/xml2pmx/doc/Readme.XML2PMX
+++ b/support/xml2pmx/doc/Readme.XML2PMX
@@ -1,5 +1,6 @@
+XML2PMX Readme
(***************************************************************************)
-(****************Copyright 2015,2016,2017 Dieter Gloetzel ******************)
+(****************Copyright 2015 -- 2020 Dieter Gloetzel ******************)
(***************************************************************************)
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -18,32 +19,37 @@
1. Introduction
"MusicXML", ( http://www.musicxml.com/ ) originally developed by Recordare INC
and now owned by Finale ( https://www.finalemusic.com/ ), is the leading
- musical data exchange format. XML2PMX provides an import facility for
+ music data exchange format. XML2PMX provides an import facility for
sheet music stored in MusicXML format to PMX and MusiXTeX, the leading free
- software for musical typesetting. Thus we are now able to import published MusicXML sources
- as well as MusicXML sources created by OCR scanning,
- e.g. with Sharpeye of VISIV ( http://www.visiv.co.uk ).
+ software for musical typesetting. Thus PMX is able to import published
+ MusicXML sources as well as MusicXML sources created by OCR scanning,
+ e.g. with Sharpeye of VISIV ( http://www.visiv.co.uk )or PhotoScore.
2. PMX
developed by Don Simons (dsimons(at)roadrunner(dot)com) is an easy to use,
- yet powerful preprocessor for the musical typesetting system MusiXTeX.
+ yet powerful preprocessor for the musical typesetting system MusiXTeX.
http://icking-music-archive.org/software/htdocs/index.html
An excellent introduction to using PMX is
- http://icking-music-archive.org/software/pmx/pmxccn.pdf
+ http://icking-music-archive.org/software/pmx/pmxccn.pdf
+ In order to work successfully with XML2PMX a good knowledge of
+ PMX is required, and of MusiXTeX will be helpful.
3. XML2PMX
has been developed by the author with "Oberon Plugin for Windows
Version 2.5" of ETHZ Zürich on Windows 10.
https://github.com/Spirit-of-Oberon/ETH-Oberon-PlugIn-Win32
+ and OLR (Oberon Linux Revival)
+ http://oberon.wikidot.com/oberon-linux-revival-olr
- XML2PMX is available as Windows-EXE (32 Bit) and as Linux binary (32 Bit).
+ XML2PMX is available as Windows-EXE (32 Bit) and as Linux binary (32 Bit).
XML2PMX requires a TeX, MusiXTeX and PMX installation.
For Unix please see: https://tug.org/texlive/
For Windows please see: https://miktex.org/2.9/setup
-4. Coverage of MusicXML
+4. Coverage of MusicXML features
The following MusicXML features are detected and translated to PMX:
- - maximum of 24 staves/voices and 400 measures
+ - 24 staves/voices and 600 bars
+ - 83 notes per instrument and bar
- two voices per staff
- maximum of two staves per instrument
- notes and rests up to 64th, including tuplets and grace notes,
@@ -56,58 +62,67 @@
- title and composer, and texts above or below the staff
- barlines, repeats, volta
- instrument names,
- - origin of XML file copied to the resulting PMX file
- - accepts Windows files (records ended by 0DX OAX)
- as well as Unix files (records ended by 0AX)
- - resulting PMX-file on Unix has records ended by 0AX.
- - resulting PMX-file on Windows has records ended by 0DX 0AX.
+ - Accepts Windows files (records ended by 0DX OAX)
+ as well as Unix files (records ended by 0AX).
+ - Resulting PMX-file on Unix has records ended by 0AX.
+ - Resulting PMX-file on Windows has records ended by 0DX 0AX.
+ - will not accept UTF16
+
+5. Additional features:
+ - command line input fields: "options" and "maxbar".
+ "options" may contain one or several of the nine letters "pdvalstgr"
+ in arbitrary sequence in upper or lower case and without spaces.
+ Option "r" removes any note which has been marked in XML with
+ print-object = "no".
+ "maxbar" is a limit on the number of bars to be processed.
+ When maxbar = 0 then all bars will be processed.
+ - With option = "L" Lyrics can be extracted and stored in a separate file: "songtext.txt".
+ - Automatic detection of pickup
-5. New features:
- - There is a new command line field "options",
- which may contain one or several of the five letters "PDVSL"
- in arbitrary sequence in upper or lower case.
- - Lyrics are extracted and stored in a separate file (option L=Lyrics)
- - several options for console output (P=parsed data, D=directions, V=voices, S=statistics,)
- - automatic detection of pickup
- - incomplete measures or voices are automatically filled with blind rests
-
6. Limitations
Some more elaborate situations like beams crossing staves or chords crossing staves
have not yet been covered.
+ MusicXML attributes are enclosed with double quotes.
-7. Usage on MS Windows command line:
- ===================================================================
- XML2PMX "xml-file with path" "pmx-file with path" "options"
- ===================================================================
- The doublequotes are required.
- "options" contains a sequence (without blanks) of one or several of
- the letters "p", "d", "v", "s" and "l" .
+7. Usage on MS Windows command line (quotes not required):
+ ============================================================================
+ XML2PMX_2020.exe
+ "xml-file with path" "pmx-result-file with path" "output options" "maxbar"
+ ============================================================================
+ There are two obligatory inputs: "xml-file" and "pmx-result-file".
+ "output options" and "maxbar" are optional parameters.
+ "output options" contains a sequence (without blanks) of one or several of
+ the letters "p", "d", "v", "a", "l", "r", "s", "t" and "g" .
Their meaning is the following:
- _______________________________________________________________
- | p | XML parser output; not recommended unless the terminal |
- | | window process has enough storage |
+ _____ _______________________________________________________
+ | p | XML parser: can produce much output |
|-------------------------------------------------------------|
| d | information on "directions" (dynamical marks etc) |
|-------------------------------------------------------------|
| v | distribution of voices over instruments and measures |
|-------------------------------------------------------------|
- | s | statistics of MusicXML tags like <note>, <measure> etc|
+ | a | statistics of MusicXML tags like <note>, <measure>, |
|-------------------------------------------------------------|
- | l | for extracting lyrics in a separate file |
- |_____________________________________________________________|
-
- The generated PMX file will in general be complete and can be processed by "musixtex".
-
- If not, you can often solve the problem with minor changes in the PMX code.
-
- After the XML2PMX run you will find intermediate results in the
- terminal window which may be helpful for debugging.
+ | l | extracts lyrics in a separate file |
+ |-------------------------------------------------------------|
+ | s | removes all slurs |
+ |-------------------------------------------------------------|
+ | t | removes all ties |
+ |-------------------------------------------------------------|
+ | g | uses PMX slur option inside grace note | |
+ |-------------------------------------------------------------|
+ | r | remove Notes with Print-object = "no" |
+ ---------------------------------------------------------------
+ The generated PMX file will in general be complete and can be
+ processed by PMX.If not, you can often solve the problem with
+ minor changes in the PMX code.
- Once you have a generated PMX file with all of the notes extracted, the bulk work has been done.
- It is then easy to improve the results on the PMX side.
+ Depending on the options chosen, you will find intermediate results in the
+ console window which may be helpful for debugging.
+
8.1 MusicXML test data
- You will find MusicXML-sources for testing under:
+ You will find MusicXML-sources for testing under:
http://www.musicxml.com/music-in-musicxml/example-set/
@@ -117,19 +132,55 @@
- Beethoven: "An die ferne Geliebte", Op. 98 "BeetAnGeSample.xml"
- - Lee Actor "Prelude to a tragedy": "ActorPreludeSample.xml"
- sample with 22 instruments and 41 measures
-
- Mahler: "Lieder eines fahrenden Gesellen", "MahlFaGe4Sample.xml"
8.2 OCR scanned sheet music
- The MusicXML results from the tool Sharpeye from VISIV
+ MusicXML results from the tool Sharpeye of VISIV
(http://www.visiv.co.uk/) have been tested successfully.
-Contact:
+9.1 Contents for Windows:
+ Main folder "XML2PMX_Windows_2020" contains:
+ - this Readme.txt
+ - Folder "XML", containing the MusicXML code of
+ a Telemann Fantasy for Recorder: "Telemann.xml"
+ - Folder "PMX", will take the test results *.pmx, *.pdf
+ - Folder "example" with sample results for comparison
+ - Folder "source" with the Oberon source code for Windows
+ - XML2PMX_2020.exe: Windows-Exe
+ - GNU-GPL.txt: GNU Licence
+ - Runxml_Telemann.bat : sample batch file
+9.2 Contents Linux:
+ Main folder "XML2PMX_LINUX_2020" contains:
+ - this Readme.txt
+ - Folder "XML", containing the MusicXML code of
+ a Telemann Fantasy for Recorder: "Telemann.xml"
+ - Folder "PMX" holds the test results *.pmx, *.pdf
+ - Folder "example" with sample results for comparison
+ - Folder "source" with the Oberon source code for LINUX
+ - XML2PMX_2020: LINUX Binary
+ - GNU-GPL.txt: GNU Licence
+ - RunTelemann : sample command
+
+10. XML2PMX installation
+ 10.1 Prerequisites: TeXLive installation on Unix or
+ MikTeX installation on Windows
+ including MusiXTeX and PMX.
+ 10.2 unpack the folder XML2PMX_LINUX_2020
+ or XML2PMX_Windows_2020 to a convenient place.
+ 10.3 for Windows: register XML2PMX_2020.exe, i.e. doubleclick on XML2PMX.reg.
+
+
+11. Usage example
- Feel free to contact me at <d.gloetzel(at)web(dot)de>
- in order to report errors, propose improvements or
- other comments.
+11.1 XML2PMX usage example Windows
+ double click on runxml_Telemann.bat
+11.2 XML2PMX usage example Linux
+ open a command line
+ move to folder XML2PMX_LINUX_2020
+ enter in the command line and execute: ./RunTelemann
+12. Contact:
+ Feel free to join me under <d.gloetzel(at)web(dot)de> in order to report errors, propose improvements or other comments.
+
+
diff --git a/support/xml2pmx/doc/xml2pmx.1 b/support/xml2pmx/doc/xml2pmx.1
index 3fc9c14219..09bdb4d543 100644
--- a/support/xml2pmx/doc/xml2pmx.1
+++ b/support/xml2pmx/doc/xml2pmx.1
@@ -1,4 +1,4 @@
-.TH XML2PMX 1 2020-05-21 "" ""
+.TH XML2PMX 1 2021-01-23 "" ""
.SH DESCRIPTION
@@ -35,13 +35,25 @@ The meanings of the letter options are as follows:
l for extracting lyrics in a separate file
+.SH BUGS
+
+.B xml2pmx
+processes input in UTF-8 encoding only. MusicXML files in UTF-16 encoding should be
+converted using, for example,
+.B recode
+(in Unix-like systems) or by importing into an editor like
+.B notepad
+and saving in UTF-8 encoding.
+
.SH SEE ALSO
.BR pmx (1)
.BR obc (1)
.BR musixtex (1)
+.BR recode (1)
.SH AUTHORS
This man page was written by Bob Tennent <rdt@cs.queensu.ca>.
-XML2PMX was written by Dieter Gloetzel <d.gloetzel@web.de> and
+.B xml2pmx
+was written by Dieter Gloetzel <d.gloetzel@web.de> and
adapted for compilation by obc (the Oxford Oberon Compiler) by Mike Spivey <mike@cs.ox.ac.uk>.
diff --git a/support/xml2pmx/doc/xml2pmx.pdf b/support/xml2pmx/doc/xml2pmx.pdf
index 987e7496b3..1a699aeaa6 100644
--- a/support/xml2pmx/doc/xml2pmx.pdf
+++ b/support/xml2pmx/doc/xml2pmx.pdf
Binary files differ