Coder Social home page Coder Social logo

grame-cncm / guidolib Goto Github PK

View Code? Open in Web Editor NEW
152.0 16.0 34.0 88.89 MB

Guido project - music score layout engine - music description language

Home Page: http://guido.grame.fr

License: Mozilla Public License 2.0

CMake 0.64% Makefile 6.38% QMake 0.03% CSS 0.60% C++ 52.44% C 4.20% HTML 9.52% Shell 0.07% Java 1.97% TeX 0.55% Awk 0.01% JavaScript 22.87% Python 0.15% TypeScript 0.20% Objective-C 0.09% Max 0.13% Lex 0.04% Yacc 0.08% Dockerfile 0.01% Batchfile 0.03%
guido-engine music-notation music-notation-format

guidolib's Introduction

Welcome to the Guido project

Grame - Centre National de Création Musicale

The Guido project is an open source project that encompasses a music notation format, a score rendering engine and various music score utilities. The Guido Notation Format is a general purpose formal language for representing score-level music in a platform-independent plain text and human readable way. The format comes with various software components for music score rendering and manipulation. The main of these components is the Guido Engine, a library embedable in various platforms and using different programming languages.

The Guido engine runs on the main operating systems: Linux, MacOS, iOS, Windows, Android.

See the Guido page for more information.
See the Guido documentation for the Guido language documentation.
See the Guido online editor to test the system.
See the Guido wiki for building instructions.


Build status : Ubuntu MacOS Windows Docker

Acknowledgments

The Guido project has been initiated in the 90s by Holger Hoos, Jürgen Kilian and Kai Renz, who designed the Guido Music Notation format and developed the core of the Guido engine. It became an open source project on 2002 at Grame initiative.

I would like to thank all the people who have been contributing to the project, and especially:

J. Scott Amort, Jérôme Berthet, Samuel Brochot, Yannick Chapuis, Michael Chourdakis, Thomas Coffy, Christophe Daudin, Colas Decron, Guillaume Gouilloux, Torben Hohn, Camille Le Roy, François Levy, Arnaud Margaillan, Benjamen Ruprechter, Mike Solomon, Ivan Vukosav

And of course, warmest thanks to my colleagues and friends Stéphane Letz and Yann Orlarey.


Dominique Fober

guidolib's People

Contributors

azakmow avatar becmyr avatar cdecron avatar dfober avatar ffaudio avatar gabriel-lepetitaimon avatar guillaumeg03 avatar iv41879 avatar jfkilian avatar kant avatar rettinghaus avatar yeonoson avatar yurivict avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

guidolib's Issues

Include height and width in SVG

SVGs work better(?differently) in browsers (eg plotting on HTML5 canvas) if they have height and width ie
<svg width = "479" height = "253" viewBox="0 0 479 253"
instead of just
<svg viewBox="0 0 479 253"

so an option to include those would be useful

Beam Rendering Bug on Cross Staff Notes

The following Guido excerpt:

{[ \staff<1> \staffFormat \accol<id=0, range="1-2"> \barFormat<style= "system", range="1-2"> 
   (* meas. 1 *)  \clef<"g2"> \key<-2> \meter<"3/8"> \intens<"p", dy=-2.6hs> _/4. \bar 
   (* meas. 2 *)  \stemsDown \beamsOff a/4 \slurEnd:1 _/8 ]
 , 
[ \staff<2>  
   (* meas. 1 *)  \clef<"f4"> \key<-2> \meter<"3/8">  \stemsDown \beamBegin:1 d-1/16 \stemsDown a/16 \stemsDown f#0/16 \beamEnd:1 \stemsDown \beamBegin:1 a/16 d1/16 \staff<1> f#/16 \beamEnd:1 \staff<2> \bar 
   (* meas. 2 *)  \noteFormat<dx=-2>( _*3/8)
 ]
  }

Results into
Screenshot 2019-04-16 at 14 33 34

with expected behavior such as in:
Screenshot 2019-04-16 at 14 34 30

Automatic measure numbering

It would be very interesting (both for score users and for debugging issues) that Guido automatically draws measure numbers at the beginning of each system, like in the following screenshot.
capture d ecran 2017-05-22 a 15 20 35

  1. First step: implement the basic mechanism. Increment a measure counter at each new measure, and displays number after each line break.

  2. Second step: handle "implicit" MusicXML attribute. Pickup measures (anacrouses) might appear at the beginning of the score but also in the middle of some scores. The convention is that a pickup measure does not count in the numbering. So if the score begins with a pickup, this measure does not display its number, and by convention its hidden number is 0 (so that the first "real" measure has number 1). See the following screenshot for an example.

capture d ecran 2017-05-22 a 15 33 20

To implement this, it suffices to mimic MusicXML, which handles the case with a measure attribute called "implicit" (see MusicXML documentation)
So it would be great to implement such an "implicit" attribute in Guido, and take into account with the automatic numbering by "ignoring" implicit measures (i.e. not incrementing counter).

Tremolo number of Strike Bug

It seems like the number Strikes rendered in Guido is always one less than the indicated number!?

{[ \clef<"g2"> \key<1> \meter<"3/4"> 
 \stemsUp \trem<style="/">( g/8)
 \stemsUp \trem<style="//">( b/8) 
 \stemsUp \trem<style="///">( d1/8)
 \stemsUp \trem<style="////">( g/8) 
 \stemsDown \trem<style="//">( b/8)
 \stemsDown \trem<style="/">( d2/8)
  ]
  }

leads to
Screenshot 2019-04-19 at 17 53 26

Embed .ttf font in the svg as base64 string

Embedding the font in the SVG like this works nicely for the SVGs from http://guidolib.sourceforge.net/jsengine/index.html

<style type="text/css">
	<![CDATA[
		@font-face {
			font-family: 'Guido2';
			src: url('data:application/x-font-ttf;base64,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');
		}
	]]>
</style>

Text tag introduces phantom Space

The text tag seem to introduce extraneous Space in all Staves and Voices of a GMN Score.

Adding a \space<0> can solve the problem in some cases (e.g. when the Text in an Expressive Tempo Markup) but not in all (e.g. when the text is a expressive markup before an Intensity).

See this example GMN code and the screenshot where extra spaces are highlighted:

screenshot 2019-02-16 at 18 06 03

{[ \staff<1> \barFormat<style= "system", range="1"> (* meas. 1 *) \clef<"f4"> \key<0> \meter<"2/4", autoBarlines="off", autoMeasuresNum="system"> \text<"Andantino non troppo lento",fsize=10.6pt,fattrib="b", dy=18.6hs> _/4 \text<"espress. ma ",fattrib="i", dy=-3hs> \intens<"p", dy=-1hs> \stemsDown \slurBegin:1<curve="up"> \beamsOff \tieBegin e/4 \doubleBar (* meas. 2 *) \key<3> \beamsOff e/4 \tieEnd \beamsOff c#/4 \bar (* meas. 3 *) \beamsOff \fingering<text="0", position="above">( a0/4) \slurEnd:1 \beamsOff \fingering<text="4", position="above">( c#1/4) ] , [ \staff<2> \accol<id=0, range="2-3"> \barFormat<style= "system", range="2-3"> (* meas. 1 *) \clef<"g2"> \key<0> \meter<"2/4", autoBarlines="off", autoMeasuresNum="system"> \intens<"p", dy=-5.8hs> \stemsUp \grace( \slurBegin:1<curve="down"> \beamBegin:1 b0/16 c#1/16 \beamEnd:1) \slurBegin:1<curve="down"> \beamsOff d/4. \slurEnd:1 \beamBegin:1 c#/16 b0/16 \beamEnd:1 \slurEnd:1 \doubleBar (* meas. 2 *) \key<3> \text<"sempre ",fattrib="i", dy=-8hs> \intens<"p", dy=-6hs> \slurBegin:1<curve="down"> \beamBegin:1 \tuplet<"3", dispNote="/8", position="above">( a/12 c#1/12 a0/12) \beamEnd:1 \beamBegin:1 \tuplet<"3", dispNote="/8", position="above">( e1/12 c#/12 a0/12) \beamEnd:1 \slurEnd:1 \bar (* meas. 3 *) \slurBegin:1<curve="down"> \beamBegin:1 \tuplet<"3", dispNote="/8", position="above">( a1/12 e/12 c#/12) \beamEnd:1 \beamBegin:1 \tuplet<"3", dispNote="/8", position="above">( c#2/12 a1/12 e/12) \beamEnd:1 \slurEnd:1 ] , [ \staff<3> \staffFormat<dy=-6> \barFormat<style= "system", range="3"> (* meas. 1 *) \clef<"f4"> \key<0> \meter<"2/4", autoBarlines="off", autoMeasuresNum="system"> \stemsUp \beamsOff e-1/4 \beamBegin:1 \stacc<position="below">( f#/8) \stacc<position="below">( g#/8) \beamEnd:1 \doubleBar (* meas. 2 *) \key<3> \beamsOff a-2/4 \beamBegin:1 a-1/8 a/8 \beamEnd:1 \bar (* meas. 3 *) \beamsOff a-2/4 \beamBegin:1 a-1/8 a/8 \beamEnd:1 ] }

Incorrect Slur slope with explicit Stem Directions

The slope is corrected if we inverse the Stem directions of the first Beam Group.

Probably similar to #47

{ [ \clef<"g2"> \key<-2> \meter<"2/4"> \intens<"mf", dy=-3.6hs, dx=-1>( _/16) \stemsDown \slurBegin:1 \beam( d2/16 \stemsUp \grace( f/8) \dimBegin \stemsDown e&/16 d/16) \beam( e&/16 c/16 b&1/16 \dimEnd a/16) \slurEnd:1 \bar ] }

Slur collision with beamed sequence

Slur tag on a beamed sequence can lead to the collision of slur with note/chords. Example:

[\clef<"f4"> \key<-1> \meter<"2/4"> _/8 \stemsDown \slurBegin:1 \beam( c0/8 { a/8, c1/8 } f0/8) \slurEnd:1]

Screenshot:
screen shot 2017-09-22 at 23 30 32

Harmony branch is missing

Hello, I've been experimenting with guidolib recently. Unfortunately guidolib does not yet support harmonies, which are essential for my use case. However, prior to the move to github, there used to be a harmony_tag branch with simple - but nevertheless useful - support for harmonies. That branch and about 10 others are now gone. These branches were also deleted on the sourceforge repository.

Is there a reason for the removal? Can you at least restore the harmony_tag branch? Is there any chance to get the harmony_tag branch merged to dev?

SVG problems + suggested fix

If I grab the raw SVG from http://guidolib.sourceforge.net/jsengine/index.html and load it in Chrome I get these errors:

error on line 5 at column 12297: Unescaped '<' not allowed in attributes values
error on line 5 at column 37582: Entity 'nbsp' not defined

Making these changes seems to fix it:

glyph glyph-name="less" unicode="<"
to
glyph glyph-name="less" unicode="&lt;"

<glyph glyph-name="nonbreakingspace" unicode="&nbsp;"
to
<glyph glyph-name="nonbreakingspace" unicode="&#x00A0;" [guido_svgs.zip](https://github.com/grame-cncm/guidolib/files/1575398/guido_svgs.zip)

Nested Beam Rendering Bug

The following Snippet shows a repeating bar where the durations are the same but the beaming is notated differently. It should lead to the same result but the DURATION in the first bar is incorrect.

{ [ \staff<1>
\beamBegin:1 f/16 \tieEnd \beamBegin:2 f/32 g/32 \beamEnd:2 f/8 \beamEnd:1 \bar
\beamBegin:1 f/16 \tieEnd f/32 g/32 f/8 \beamEnd:1 ]
}

See screenshot:
screen shot 2018-09-17 at 15 34 25

Incorrect Slur rendering between grace and normal note

Slur between a grace note and proceeding normal note is rendered from the grace note to the STEM of the proceeding note (whereas it should be to the note).

Example:
{[ (* meas. 1 *) \clef<"g2"> \key<-1> \meter<"2/4"> \stemsUp \grace( \slurBegin:1<curve="down"> \beamsOff g#2/8) \stemsDown \beamBegin:1 \stacc<position="above">( a/8) \slurEnd:1 \stemsUp \grace( \slurBegin:1<curve="down"> g#/8) \stemsDown \stacc<position="above">( a/8) \beamEnd:1 \slurEnd:1 \beamBegin:1 \accent<position="above">( c3/8.) b2/16 \beamEnd:1 \bar (* meas. 2 *) \stemsUp \grace( \slurBegin:1<curve="down"> \beamsOff g#/8) \stemsDown \beamBegin:1 \stacc<position="above">( a/8) \slurEnd:1 \stemsUp \grace( \slurBegin:1<curve="down"> g#/8) \stemsDown \stacc<position="above">( a/8) \beamEnd:1 \slurEnd:1 \beamBegin:1 \accent<position="above">( c3/8.) d/16 \beamEnd:1 ] }

Rendering in Guido:
screenshot 2019-02-14 at 17 36 33

Correct rendering:
screenshot 2019-02-14 at 17 37 16

Normalize Tremolo syntax to other ornaments

Recently some ornaments' syntax, such as trill has been modified so that alternating pitches pass as main arguments and not tag arguments. We should probably extend this to Tremolo.

Meaning that:
\tremolo<style="//", pitch="c">(e) becomes \tremolo<style="//">(e c)
and
\trem<pitch="{d,f}",thickness=0.5>({e0/2,g}) becomes \trem<thickness=0.5>({e0/2,g} {d,f})

Non-pianistic tremolo can stay intact: Example: \trem<style="////">({c,e,g})

Clef spacing problem in presence of Empty Staves

In multi-staves scores, with presence of multiple voices (such as a regular piano scores), \clef tag in the middle of a measure produces excessive empty space.

Render attached score and look at measures 2 and 5:

GuidoClefBug.gmn.txt

Note that if you remove the empty \staff<3> in the end the bug disappears. I reduced this from a complex score where the \staff<3> voice had lots of \empty tags for voicing.

Mapping box with a negative width

{ [ \meter<"C"> c d e ], [ \meter<"C"> _/1 ] }

image

Since it's the first bar, rest mapping is not extended towards left. At the same date (0), for the rect left value we take the rightmost element, which is at the right of the second note's left.

NULL Map at ARStaff Initialization

The newly TagParameterMap::Add method fills an uninitialized STL Map using the regular key = value of operator[] STL methods.

This is dangerous if the pair does not initially exists and can lead to run-time crash on several platforms. The problem is that the defined prototypes are not default initialized.

It is actually the case for ARM!

We should probably use STL insert method instead to avoid this.

See this stackoverflow post for details.

Measure numbering

I sow some newer features and options for measure numbering. Is it possible to do something like illustrated below? Left side is what we have now, right side is what I sow most often with printed scores that I have with me. Is it possible to add marking on these red marked numbers?

measure-numbering

Crescendo rendering bug on single Chord

Render the following snippet in Guido

{ [ \staff<1> (* meas. 1 *) \clef<"g2"> \key<-2> \meter<"3/4"> _*3/4 \bar (* meas. 2 *) \beamsOff { a&0/4, c1/4, f/4 } \crescBegin \beamsOff { a&0/2, b&/2, f1/2 } \crescEnd \bar ] }

Measure 2 should show a simple crescendo on the second chord. It is actually rendered as a vertical line on the note:

screen shot 2017-09-26 at 00 56 58

I believe this has something to do with the range of the Crescendo when it begins and ends before and right after the same note/chord.

GuidoGetMeterAt bug (returns zero on Count)

On the (simple) attached score gmn-getMeterAt0Error.txt run the following command from the API:

    GuidoDate guidoDate;
    guidoDate.num = 0;
    guidoDate.denom = 1;
    GuidoMeter meter;
    GuidoGetMeterAt(self.arHandler, 1, guidoDate, meter);

which leads to meter.count[0] being equal to zero, which is wrong! This is a simple 2/4 piece.

Superimposed rests leading to a wrong mapping

{ [ \meter<"C"> c/1 _ ], [ \staff<1> \meter<"C"> empty/1 _ ] }

image

This example fails because there are two rests at the same date on the same staff (voice 1 an 2). The series kBar => kRest is consumed when meeting the first rest, so we don't detect that the other rest if also following the barline.
This can lead to a negative box width as shown in this issue.

Mordent on a chord

Rendering is aborted in Guido (all instances) if noteFormat is nested within \acc or \stacc or \mordent or similar as seen in this score excerpt: SoloLine.txt

Score source is Bartok's Romanian Folk Dance N°3 for violin. See
PDF rendered in another editor and MusicXML Source.

The score is rather simple and reduced to a minimal version to detect various nesting bugs.

Suggestion: Admin should probably enable file uploads with gmn and xml file extensions in this repository! :)

github version fails to build

When I switched from sourceforge to github to see the latest changes, this error showed up:

===================================
Build guido2image for linux done
===================================
gmake[9]: Leaving directory '/usr/ports/audio/guidolib/work/guidolib-4ef8d02/environments/Qt/apps/guido2image/build'
gmake[8]: Leaving directory '/usr/ports/audio/guidolib/work/guidolib-4ef8d02/environments/Qt/apps/guido2image/build'
gmake[7]: Leaving directory '/usr/ports/audio/guidolib/work/guidolib-4ef8d02/environments/Qt/apps/guido2image/build'
gmake -C GuidoEditor/build
gmake[7]: Entering directory '/usr/ports/audio/guidolib/work/guidolib-4ef8d02/environments/Qt/apps/GuidoEditor/build'
gmake -f ../../Make.shared PROJECT=GuidoEditor 
gmake[8]: Entering directory '/usr/ports/audio/guidolib/work/guidolib-4ef8d02/environments/Qt/apps/GuidoEditor/build'
gmake -f ../../Make.shared linux
gmake[9]: Entering directory '/usr/ports/audio/guidolib/work/guidolib-4ef8d02/environments/Qt/apps/GuidoEditor/build'
gmake -C linux -f GuidoEditor.makefile
gmake[10]: Entering directory '/usr/ports/audio/guidolib/work/guidolib-4ef8d02/environments/Qt/apps/GuidoEditor/build/linux'
clang++ -pthread -Wl,-rpath,/usr/local/lib/qt5 -o GuidoEditor CodeEditor.o GuidoHighlighter.o main.o MainWindow.o MusicNotationHighlighter.o QFindWidget.o SetupDialog.o qrc_application.o moc_CodeEditor.o moc_MainWindow.o moc_QFindWidget.o moc_SetupDialog.o   -L/usr/local/lib -L/usr/ports/audio/guidolib/work/guidolib-4ef8d02/environments/Qt/apps/GuidoEditor/../../libs -lGuidoQt -L/usr/ports/audio/guidolib/work/guidolib-4ef8d02/environments/Qt/apps/../../../build/linux -L/usr/ports/audio/guidolib/work/guidolib-4ef8d02/build -lGUIDOEngine -L/usr/local/lib/qt5 -lQt5PrintSupport -lQt5Widgets -lQt5Gui -lQt5Core -lGL 
MainWindow.o: In function `MainWindow::updateDisplayState()':
../../MainWindow.cpp:(.text+0xa9dc): undefined reference to `GuidoShowElement'
../../MainWindow.cpp:(.text+0xa9f2): undefined reference to `GuidoShowElement'
../../MainWindow.cpp:(.text+0xaa08): undefined reference to `GuidoShowElement'
../../MainWindow.cpp:(.text+0xaa1e): undefined reference to `GuidoShowElement'
../../MainWindow.cpp:(.text+0xaa34): undefined reference to `GuidoShowElement'
clang++: error: linker command failed with exit code 1 (use -v to see invocation)

Slur slope explosion

on Measure 1 of this GMN example:

{[ (* meas. 1 *) \clef<"g2"> \stemsUp \slurBegin:1<curve="down"> \beamBegin:1 e/16 d#/16 c#/16 d#/16 e/16 f#/16 \beamEnd:1 \beamBegin:1 e/16 d#/16 c#/16 d#/16 e/16 f#/16 \beamEnd:1 \slurEnd:1 \bar (* meas. 2 *) \slurBegin:1<curve="up"> \beamBegin:1 e/16 d#/16 e/16 f#/16 g#/16 \dimBegin<dy=-2.8hs> a/16 \beamEnd:1 \stemsDown \beamBegin:1 b/16 c#2/16 d#/16 e/16 f#/16 g#/16 \beamEnd:1 \slurEnd:1 \dimEnd ] }

Rendered in Guido:
screenshot 2019-02-14 at 17 42 04

Note that this phenomenon usually makes the slur in question collide with the next System.

Font size change for tempo indication

Dear @dfober , I cannot change the font size of the tempo marking. Am I doing something wrong or it is a bug? So in this particular attached sample test file I would like that my tempo indication is with equal font as instrument name.

{
[
\title<"Test file">
\unit<"mm">
\tempo<"tempo [1/4] = 135", dy=15, fsize=12pt>
\pageFormat<"215.9, 279.4, 10, 20, 10, 20">
\barFormat<style="system">
\instr<"Grand piano instrument", dx=10, dy=14, fsize=12pt>
]
,
[
\staff<1> \clef<"g"> \meter<"4/4", autoMeasuresNum="on"> c d e f g a]
}

[Feature Request] support for \autoMeasureNum="line"

Currently the \autoMeasureNum tag accepts the "page" parameter, inserting automatically measure numbers on the first measure of each new page.

It would be really great (and coherent with many score editions) to extend this feature for "line" to automatically insert measure number on each new line/system/line-break generated by Guido.

Grace rending conflict with noteFormat

using \grace tag creates conflict when used before or after a note/chord containing \noteFormat.

Use this reduced sample. It has three staves:

  • Staff 1: A \grace in the middle of two chords with \noteFormat. Rendering is blocked.
  • Staff 2: Same thing with \grace removed. Rendering is not blocked.
  • Staff 3: same as Staff 1 but with \noteFormat removed inside the grace chord. Note that the regular grace chord is not rendered correctly. If you remove the \noteFormat from the prior chord then it'll be fine. Seems like the presence of \noteFormat somehow messes up the sequence for \grace.

Feature Request: Arpeggio

This is one feature missing from Guido, drafted in the Advanced Guido Document.

I believe everything is there (the wavy line used in tremolo that can be made vertical for example).

Display problems with harmony tag

With the newly merged harmony feature there are still some problems which are marked in the following image:

guidolib-harmony

  • The harmony does not properly work with "autoBarlines=on", in this case the chord on first notes is put above the previous barline (which might even be on another page) -> As I'm always working with autoBarlines=off (by using the conversion output of libmusicxml), this problem does not affect me.
  • Long chords (e.g. Cmaj7) might overlap the next chord (maybe some detection as done for lyrics might help)
  • Currently the vertical position has to be set manually with e.g. 'dy=18', an automatic positioning (as done for lyrics) might be better. This one could also be handled when generating the gmn from musicxml.
  • There might be a problem if a measure with 1 note has several chords. However, the horizontal position can be controlled by e.g. 'dx=10' (as done for the last E), but this is not yet used by the libmusicxml (see the second and third last chords - C, D)

Enhancement: Add placement parameter for Fingering tag

The Fingering tag in current GuidoLib is pretty useful but it will be even more useful if we could add a Placement parameter to put the fingering. Currently the tag accepts dy and dx parameters and the default position is below the encompassed events.

While this works when the stem is pointing upwards, it would be impossible to calculate correct dy when the stem is pointing downwards.

Adding a placement or position parameter similar to Articulations in Guido will solve this problem.

build/Makefile isn't multi-processing safe

Build fails:

gmake linux
gmake[3]: Entering directory '/usr/ports/print/guidolib/work/guidolib-1.63-src/build'
[ -d linux ] || mkdir linux
gmake -C linux
gmake[4]: Entering directory '/usr/ports/print/guidolib/work/guidolib-1.63-src/build'
gmake[4]: *** linux: No such file or directory.  Stop.
gmake[4]: Leaving directory '/usr/ports/print/guidolib/work/guidolib-1.63-src/build'
gmake[3]: *** [Makefile:180: linux/libGUIDOEngine.so] Error 2
gmake[3]: *** Waiting for unfinished jobs....
cd linux && cmake .. -G "Unix Makefiles" -DMIDIEXPORT=yes

unless -j 8 is removed.

This section in build/Makefile is related:

linuxcmake:
$(LINUX)/Makefile : CMakeLists.txt
        [ -d $(LINUX) ] || mkdir $(LINUX)
        cd $(LINUX) && cmake .. -G "Unix Makefiles" -DMIDIEXPORT=yes

It looks like it creates this directory and then something else immediately expects it to be filled.

Similar problems in Qt apps directories, like environments/Qt/apps/guido2image/build.

You need to test build with high number of jobs, or on different OSes to catch these problems.

Observed on FreeBSD 11.1

Unwanted rendered space for mid-measure \clef

This used to be Bug #23 on the old SourceForce but it has come back probably in a different form.

The Clef change in Measure 2 of this score generates unwanted space:

{ 
[ \staff<1>  \accol<id=0, range="1-2"> \barFormat<style= "system", range="2-3"> 
   (* meas. 1 *)  \beamsOff f/8  \stemsUp  a&1/4 \intens<"p", dy=-3hs>  g/8 \bar 
   (* meas. 2 *)  \stemsUp \beam( c1/8 e/8 a&/8  f/8) \bar 
 ]

, [ \staff<2>  (* 1st voice *)
   (* meas. 1 *)   \beamsOff  { f-2/8, f-1/8 } _/8 _/4 \bar 
   (* meas. 2 *)   _/8 \clef<"g2"> _/8 _/4 \bar 
 ]
, [ \staff<2> (* 2nd voice *)
   (* meas. 1 *)  empty/2 \bar 
   (* meas. 2 *)  empty/2 \bar 
  ]
 }

Two manual ways to get rid of this space after trial and error are:

  1. remove the \beamsOff in measure 1 of 1st voice of staff 2; or
  2. remove the 2nd voice of staff 2 entirely

I tried to reduce the complex score as much as I could to make it meaningful! :)

Beamed Staccato positioning rendering problem

When used on a Beamed sequence, the stacc tag with placement parameters do not adapt to the stem length leading to chaotic rendering.

Example with screenshot (using latest Guidolib compile):

{[ \staff<1> (* meas. 1 *) \clef<"f4"> (* meas. 1 *) \stemsDown \beamBegin:1 \stacc<position="below">( c-1/8) \stacc<position="below">( c0/8) \stacc<position="below">( c-1/8) \stacc<position="below">( c0/8) \stacc<position="below">( c-1/8) \stacc<position="below">( c0/8) \beamEnd:1 ] , [ \staff<2> \staffFormat<dy=-6> (* meas. 1 *) \stemsUp \beamBegin:1 \stacc<position="above">( e0/8) \stacc<position="above">( f/8) \stacc<position="above">( g/8) \stacc<position="above">( e/8) \stacc<position="above">( f/8) \stacc<position="above">( g/8) \beamEnd:1 ] }

screenshot 2019-02-13 at 16 17 40

Incorrect DispNote rendering off Chords in Tuplet

DispNote is rendered correctly on single notes but not (apparently) taken into account for chords.

See example:

{ [ \beam( \tuplet<"", dispNote="/32">( c#3/4 b2/4)) \beam( \tuplet<"", dispNote="/16">( a/4 g#/4)) \bar \beam( \tuplet<"", dispNote="/16">( { a/4, g3/4 } { c/4, a/4 })) \beam( \tuplet<"", dispNote="/32">( { a2/4, b3/4 } { a2/4, c4/4 })) ] }

The two measures should lead to the same beaming but they don't since the second measure has chords. Screenshot:
screen shot 2017-10-09 at 12 12 13

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.