summaryrefslogtreecommitdiff
path: root/support/xml2pmx/README
blob: 9320fa1a74433a725d95d80763c9e4e911a65047 (plain)
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
xml2pmx, version 2020-06-29.  

Summary: xml2pmx translates MusicXML into PMX notation. 

MusicXML (http://www.musicxml.com) originally               
developed by Recordare and now owned by Finale              
(https://www.finalemusic.com/), is the leading music-data 
exchange format.                                            

PMX, developed by Don Simons dsimons(at)roadrunner(dot)com,
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.
https://github.com/Spirit-of-Oberon/ETH-Oberon-PlugIn-Win32

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) 

This package is based on a runtime system developed by Mike
Spivey (mike(at)cs.ox.ac.uk) as part of the Oxford Oberon
Compiler project.

Usage
*****

On Windows or Macs, use the executables provided in the
relevant folders.

To build and install an executable xml2pmx on a Linux system
with conventional development tools:

  tar xvf xml2pmx-2020-06-29.tar.gz
  cd xml2pmx-2020-06-29
  ./configure 
  make
  sudo make install

Full details on usage are in the man page. The most
convenient way to use xml2pmx is with the musixtex.lua
script, version 0.23 or later, which supports xml2pmx as a
pre-preprocessor. Version 0.23 of musixtex.lua is provided
in the scripts folder. On Windows you may have to use it as
follows:

  texlua musixtex.lua something[.xml]

If it is necessary to edit the resulting pmx file, use the
-m option.

Licencing
*********

The source files for xml2pmx are Copyright 2015-2020 by
Dieter Gloetzel (d.gloetzel(a)web.de) and the source files
for the runtime system are Copyright 2020 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
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.

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
Gloetzel (d.gloetzel(at)web.de).