text below staff ouch!

classic Classic list List threaded Threaded
14 messages Options
Reply | Threaded
Open this post in threaded view
|

text below staff ouch!

Aaron Mehl
Hi again,

I got the markup of text below the staff to work, but
the hebrew is backwards, ouch.

Is there a specific command I must type to get the
text to bidi correctly?

Thanks
Aaron

If an example is needed I can send a png, I am not
sure how large attachments the list permits so I am
leaving it off this email.

Thanks
Aaron

__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around
http://mail.yahoo.com 


_______________________________________________
lilypond-user mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/lilypond-user
Reply | Threaded
Open this post in threaded view
|

Re: text below staff ouch!

Han-Wen Nienhuys
Aaron Mehl wrote:
> Hi again,
>
> I got the markup of text below the staff to work, but
> the hebrew is backwards, ouch.
>
> Is there a specific command I must type to get the
> text to bidi correctly?

Hi,

the text layout is handled by Pango, so I guess it's a matter of passing
the right options to Pango. I can look into it as a sponsored feature,
if you like.

CAn you explain the problem more precisely: does Lily's hebrew go LtoR
or RtoL, and should the bidi be switchable, or is there a sane default
that we can use?


--
  Han-Wen Nienhuys - [hidden email] - http://www.xs4all.nl/~hanwen


_______________________________________________
lilypond-user mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/lilypond-user
Reply | Threaded
Open this post in threaded view
|

Re: text below staff ouch!

Aaron Mehl

> the text layout is handled by Pango, so I guess it's
> a matter of passing
> the right options to Pango. I can look into it as a
> sponsored feature,
> if you like.

yes
how much would it cost?
Aarn
but actually for each word the letters are in the
correct order but the words themselves go left to
right instead of right to left.

I am attaching a png if it will help (if you can read
hebrew :) )
Aaron

> CAn you explain the problem more precisely: does
> Lily's hebrew go LtoR
> or RtoL, and should the bidi be switchable, or is
> there a sane default
> that we can use?
>
>
> --
>   Han-Wen Nienhuys - [hidden email] -
> http://www.xs4all.nl/~hanwen
>
__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around
http://mail.yahoo.com 
_______________________________________________
lilypond-user mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/lilypond-user

hebrewexample.png (28K) Download Attachment
stk
Reply | Threaded
Open this post in threaded view
|

Re: text below staff ouch!

stk
In reply to this post by Aaron Mehl
Aaron Mehl wrote:

> but actually for each word the letters are in the
> correct order but the words themselves go left to
> right instead of right to left.

With automatic text reversal, I would expect
          \markup { ONE TWO THREE }
to produce
          ENO OWT EERHT

But, with a pair of quote-marks added, I would expect
          \markup { "ONE TWO THREE" }
to produce
          EERHT OWT ENO

In the first case, \markup handles 3 arguments, one after the other.

In the second case, \markup handles one single argument.

-- Tom



_______________________________________________
lilypond-user mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/lilypond-user
Reply | Threaded
Open this post in threaded view
|

Re: text below staff ouch!

Aaron Mehl


--- [hidden email] wrote:

> Aaron Mehl wrote:
>
> > but actually for each word the letters are in the
> > correct order but the words themselves go left to
> > right instead of right to left.
>
> With automatic text reversal, I would expect
>           \markup { ONE TWO THREE }
> to produce
>           ENO OWT EERHT

exactly

 which is what it does once I removed the
justification and wordwrapping
> But, with a pair of quote-marks added, I would
> expect
>           \markup { "ONE TWO THREE" }
> to produce
>           EERHT OWT ENO
>


bravo!
> In the first case, \markup handles 3 arguments, one
> after the other.
>
> In the second case, \markup handles one single
> argument.
>

but now why can't I use word wrap and justify?
maybe I need some escape charactor?

Thanks so far,
Aaron
> -- Tom
>
>


__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around
http://mail.yahoo.com 


_______________________________________________
lilypond-user mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/lilypond-user
stk
Reply | Threaded
Open this post in threaded view
|

Re: text below staff ouch!

stk

> but now why can't I use word wrap and justify?

I don't usually read this list on the Web, I just read the mail that
the list sends me -- and at this point I have lost track of your
original post to the list.

My mail client is plain-text only (Latin-1).  Can you post a message
containing a \markup command *without* word-wrap & justify which gets the
character-order right, and then, secondly, the \markup command *with*
word-wrap & justify, so that I can look at it?

You don't have to use the actual characters in the two \markup examples.
You could just use ascii characters ABC...; it would still show me
the structure of the command you're using.

Thanks for your patience...

-- Tom

**************************************************************

On Mon, 22 Aug 2005, Aaron Mehl wrote:

> --- [hidden email] wrote:
>
> > Aaron Mehl wrote:
> >
> > > but actually for each word the letters are in the
> > > correct order but the words themselves go left to
> > > right instead of right to left.
> >
> > With automatic text reversal, I would expect
> >           \markup { ONE TWO THREE }
> > to produce
> >           ENO OWT EERHT
>
> exactly
>
>  which is what it does once I removed the
> justification and wordwrapping
>
> > But, with a pair of quote-marks added, I would
> > expect
> >           \markup { "ONE TWO THREE" }
> > to produce
> >           EERHT OWT ENO
> >
>
>
> bravo!
>
> > In the first case, \markup handles 3 arguments, one
> > after the other.
> >
> > In the second case, \markup handles one single
> > argument.
> >
>
> but now why can't I use word wrap and justify?
> maybe I need some escape charactor?
>
> Thanks so far,
> Aaron
>
> > -- Tom



_______________________________________________
lilypond-user mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/lilypond-user
Reply | Threaded
Open this post in threaded view
|

Re: text below staff ouch!

Mats Bengtsson-6
In reply to this post by Aaron Mehl
Did you try \justify-string or \wordwrap-string?
See the example called markup-word-wrap.ly in the Regression
Test document for version 2.7 to see what the different
word wrapping commands do (though not for Hebrew).

    /Mats

Aaron Mehl wrote:

>
> --- [hidden email] wrote:
>
>
>>Aaron Mehl wrote:
>>
>>
>>>but actually for each word the letters are in the
>>>correct order but the words themselves go left to
>>>right instead of right to left.
>>
>>With automatic text reversal, I would expect
>>          \markup { ONE TWO THREE }
>>to produce
>>          ENO OWT EERHT
>
>
> exactly
>
>  which is what it does once I removed the
> justification and wordwrapping
>
>>But, with a pair of quote-marks added, I would
>>expect
>>          \markup { "ONE TWO THREE" }
>>to produce
>>          EERHT OWT ENO
>>
>
>
>
> bravo!
>
>>In the first case, \markup handles 3 arguments, one
>>after the other.
>>
>>In the second case, \markup handles one single
>>argument.
>>
>
>
> but now why can't I use word wrap and justify?
> maybe I need some escape charactor?
>
> Thanks so far,
> Aaron
>
>>-- Tom
>>
>>
>
>
>
> __________________________________________________
> Do You Yahoo!?
> Tired of spam?  Yahoo! Mail has the best spam protection around
> http://mail.yahoo.com 
>
>
> _______________________________________________
> lilypond-user mailing list
> [hidden email]
> http://lists.gnu.org/mailman/listinfo/lilypond-user

--
=============================================
        Mats Bengtsson
        Signal Processing
        Signals, Sensors and Systems
        Royal Institute of Technology
        SE-100 44  STOCKHOLM
        Sweden
        Phone: (+46) 8 790 8463
         Fax:   (+46) 8 790 7260
        Email: [hidden email]
        WWW: http://www.s3.kth.se/~mabe
=============================================


_______________________________________________
lilypond-user mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/lilypond-user
Reply | Threaded
Open this post in threaded view
|

Re: text below staff ouch!

Aaron Mehl



> Did you try \justify-string or \wordwrap-string?
> See the example called markup-word-wrap.ly in the
> Regression
> Test document for version 2.7 to see what the
> different
> word wrapping commands do (though not for Hebrew).

Thats where I got the examples I used from
So far they don't work with the hebrew.

Aaron


               
____________________________________________________
Start your day with Yahoo! - make it your home page
http://www.yahoo.com/r/hs 
 


_______________________________________________
lilypond-user mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/lilypond-user
Reply | Threaded
Open this post in threaded view
|

Re: text below staff ouch!

Aaron Mehl
In reply to this post by stk

>
> > but now why can't I use word wrap and justify?
>
> I don't usually read this list on the Web, I just
> read the mail that
> the list sends me -- and at this point I have lost
> track of your
> original post to the list.
>

fine I use mutt and use yahoo only for lilypond
because my private address doesn't work for this list.

I can send you the example to your email if you
promise to reply back to the group so that the answer
appears in the archives.

> My mail client is plain-text only (Latin-1).  Can
> you post a message
> containing a \markup command *without* word-wrap &
> justify which gets the
> character-order right, and then, secondly, the
> \markup command *with*
> word-wrap & justify, so that I can look at it?
>
> You don't have to use the actual characters in the
> two \markup examples.
> You could just use ascii characters ABC...; it would
> still show me
> the structure of the command you're using.
>
> Thanks for your patience...
>
> -- Tom
>
>
Thank you
Aaron

**************************************************************

>
> On Mon, 22 Aug 2005, Aaron Mehl wrote:
>
> > --- [hidden email] wrote:
> >
> > > Aaron Mehl wrote:
> > >
> > > > but actually for each word the letters are in
> the
> > > > correct order but the words themselves go left
> to
> > > > right instead of right to left.
> > >
> > > With automatic text reversal, I would expect
> > >           \markup { ONE TWO THREE }
> > > to produce
> > >           ENO OWT EERHT
> >
> > exactly
> >
> >  which is what it does once I removed the
> > justification and wordwrapping
> >
> > > But, with a pair of quote-marks added, I would
> > > expect
> > >           \markup { "ONE TWO THREE" }
> > > to produce
> > >           EERHT OWT ENO
> > >
> >
> >
> > bravo!
> >
> > > In the first case, \markup handles 3 arguments,
> one
> > > after the other.
> > >
> > > In the second case, \markup handles one single
> > > argument.
> > >
> >
> > but now why can't I use word wrap and justify?
> > maybe I need some escape charactor?
> >
> > Thanks so far,
> > Aaron
> >
> > > -- Tom
>
>


__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around
http://mail.yahoo.com 


_______________________________________________
lilypond-user mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/lilypond-user
Reply | Threaded
Open this post in threaded view
|

Re: text below staff ouch!

Mats Bengtsson-6
In reply to this post by Aaron Mehl
Since you are the only one in the discussion who knows Hebrew,
maybe you can enlighten the rest of us what happens and what
you would like to happen, for example using some examples similar
to examples that Tom sent earlier.

    /Mats

Aaron Mehl wrote:

>
>
>>Did you try \justify-string or \wordwrap-string?
>>See the example called markup-word-wrap.ly in the
>>Regression
>>Test document for version 2.7 to see what the
>>different
>>word wrapping commands do (though not for Hebrew).
>
>
> Thats where I got the examples I used from
> So far they don't work with the hebrew.
>
> Aaron
>
>
>
> ____________________________________________________
> Start your day with Yahoo! - make it your home page
> http://www.yahoo.com/r/hs 
>  

--
=============================================
        Mats Bengtsson
        Signal Processing
        Signals, Sensors and Systems
        Royal Institute of Technology
        SE-100 44  STOCKHOLM
        Sweden
        Phone: (+46) 8 790 8463
         Fax:   (+46) 8 790 7260
        Email: [hidden email]
        WWW: http://www.s3.kth.se/~mabe
=============================================


_______________________________________________
lilypond-user mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/lilypond-user
Reply | Threaded
Open this post in threaded view
|

Re: text below staff ouch!

Aaron Mehl
In reply to this post by stk
Well I have to admit I only tried two of the examples

\markup {
  this is normal  text
  \override #'(linewidth . 60)
  \wordwrap {
    "ABC cde"
  }
 
works and gives me  edc  CBA but for a long lines it
keeps going off the page (no word wrap?)I gather the
override linewidth should be set to something
different for this to work?...

}

\markup {
  this is normal  text
  \override #'(linewidth . 40)
  \justify {
    "ABC def
     ABC def
     ABC def
"
  }
if I make separate lines they come out as a mess one
on top of the other.



}


\markup {

  \override #'(linewidth . 40)

{  \wordwrap-string #" ABC def "

Here the word wrap does work but the word order for
hebrew comes out:

CBA fed (left to right word order right to left letter
order)


  \justify-string #"
ABC def
ABC def
ABC def

" }

Here the justify works but on the english side not the
hebrew. The hebrew word order is also wrong:
CBA fed
CBA fed
CBA fed

(left to right word order right to left letter order)

I am sorry I didn't test this better previously.

So I can get the correct word order it is just the
justify and wordwrap that are acting flakey.

Thanks
Aaron


               
____________________________________________________
Start your day with Yahoo! - make it your home page
http://www.yahoo.com/r/hs 
 


_______________________________________________
lilypond-user mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/lilypond-user
Reply | Threaded
Open this post in threaded view
|

Re: text below staff ouch!

Aaron Mehl
In reply to this post by Mats Bengtsson-6

I was a busy beaver look at my other post for more
specifics on this.

I admit that I didn't test all the possibilites till
now but I hope it is clear enough now.

:)
Aaron
--- Mats Bengtsson <[hidden email]> wrote:

> Since you are the only one in the discussion who
> knows Hebrew,
> maybe you can enlighten the rest of us what happens
> and what
> you would like to happen, for example using some
> examples similar
> to examples that Tom sent earlier.
>
>     /Mats
>
> Aaron Mehl wrote:
> >
> >
> >>Did you try \justify-string or \wordwrap-string?
> >>See the example called markup-word-wrap.ly in the
> >>Regression
> >>Test document for version 2.7 to see what the
> >>different
> >>word wrapping commands do (though not for Hebrew).
> >
> >
> > Thats where I got the examples I used from
> > So far they don't work with the hebrew.
> >
> > Aaron
> >
> >
> >
> >
> ____________________________________________________
> > Start your day with Yahoo! - make it your home
> page
> > http://www.yahoo.com/r/hs 
> >  
>
> --
> =============================================
> Mats Bengtsson
> Signal Processing
> Signals, Sensors and Systems
> Royal Institute of Technology
> SE-100 44  STOCKHOLM
> Sweden
> Phone: (+46) 8 790 8463
>          Fax:   (+46) 8 790 7260
> Email: [hidden email]
> WWW: http://www.s3.kth.se/~mabe
> =============================================
>



               
____________________________________________________
Start your day with Yahoo! - make it your home page
http://www.yahoo.com/r/hs 
 


_______________________________________________
lilypond-user mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/lilypond-user
Reply | Threaded
Open this post in threaded view
|

Re: text below staff ouch!

Han-Wen Nienhuys
In reply to this post by Mats Bengtsson-6
Mats Bengtsson wrote:
> Since you are the only one in the discussion who knows Hebrew,
> maybe you can enlighten the rest of us what happens and what
> you would like to happen, for example using some examples similar
> to examples that Tom sent earlier.

the problem seems to be that \markup commands are hard-coded to LtoR
text composition. Individual words are handled by Pango, so these are
done correctly.

--
  Han-Wen Nienhuys - [hidden email] - http://www.xs4all.nl/~hanwen


_______________________________________________
lilypond-user mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/lilypond-user
stk
Reply | Threaded
Open this post in threaded view
|

Re: text below staff ouch!

stk
In reply to this post by Aaron Mehl

Well, from your four examples, and from Han-Wen's remarks, it looks like
you will have to give up on using wordwrap:  I think you will have to
produce each line of the text individually, given LilyPond's current
limitations.

If you define the lines in variables,

La = "this string is the first line of text"
Lb = "this string is the second line of text"
Lc = "this string is the third line of text"

and so on, guessing as well as you can how to break up the text
into lines, then you can write

\markup { La }
\markup { Lb }
\markup { Lc }

or instead, the following might work:

\markup { \column { La Lb Lc } }

I haven't been using LilyPond for very long, but I think you could write
something like

\markup {  \override #'(baseline-skip . 1.2) \column { La Lb Lc } }

or maybe

\markup { \column { \override #'(baseline-skip . 1.2) La Lb Lc } }

to control the vertical spacing of the lines.  But at least one of those
two possibilities is not correct syntax.  I'm pressed for time tonight, so
I can't try these things out at the moment.

As to whether you could throw in a   \justify   before or inside
the \column {...} construct, I don't know, but it would be worth a try.

-- Tom

*********************************************************************

On Wed, 24 Aug 2005, Aaron Mehl wrote:

> Well I have to admit I only tried two of the examples
>
> \markup {
>   this is normal  text
>   \override #'(linewidth . 60)
>   \wordwrap {
>     "ABC cde"
>   }
>
> works and gives me  edc  CBA but for a long lines it
> keeps going off the page (no word wrap?)I gather the
> override linewidth should be set to something
> different for this to work?...
>
> }
>
> \markup {
>   this is normal  text
>   \override #'(linewidth . 40)
>   \justify {
>     "ABC def
>      ABC def
>      ABC def
> "
>   }
> if I make separate lines they come out as a mess one
> on top of the other.
>
>
>
> }
>
>
> \markup {
>
>   \override #'(linewidth . 40)
>
> {  \wordwrap-string #" ABC def "
>
> Here the word wrap does work but the word order for
> hebrew comes out:
>
> CBA fed (left to right word order right to left letter
> order)
>
>
>   \justify-string #"
> ABC def
> ABC def
> ABC def
>
> " }
>
> Here the justify works but on the english side not the
> hebrew. The hebrew word order is also wrong:
> CBA fed
> CBA fed
> CBA fed
>
> (left to right word order right to left letter order)
>
> I am sorry I didn't test this better previously.
>
> So I can get the correct word order it is just the
> justify and wordwrap that are acting flakey.
>
> Thanks
> Aaron



_______________________________________________
lilypond-user mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/lilypond-user