lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: endless tab?


From: bb
Subject: Re: endless tab?
Date: Mon, 5 Feb 2018 15:58:10 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.6.0



Am 05.02.2018 um 14:02 schrieb Urs Liska:


Am 05.02.2018 um 10:07 schrieb Blöchl Bernhard:
Am 04.02.2018 23:56, schrieb Simon Albrecht:
On 04.02.2018 14:19, bb wrote:
It is not really endless but the tab does not have any line break. If I try to insert \break this will be ignored? There must be something wrong with my code I cannot figure out?

Thanks for help

\version "2.19.80"
        \new TabStaff {
        \set TabStaff.tablatureFormat = #fret-number-tablature-format-banjo
         \set TabStaff.stringTunings = #banjo-open-g-tuning
        %\set TabStaff.stringTunings = #(four-string-banjo banjo-c-tuning)

       \tabFullNotation
       \stemDown
 cis'''16\1 c'''16.\1 b''8\1 ais''8.\1 a''4\1 gis''4.\1 g''2\1 fis''2.\1 f''1\1 e''1.\1 dis''\1 d''\1 cis''\1 c''\1 b'\1 ais'\1 a'\1 gis'\1 g'\1 fis'\1 f'\1 e'\1 dis'\1 d'\1 g'\3 ais''\2 a''\2 e'\3 g''\2 fis''\2 f''\2 e''\2 dis''\2 d''\2 cis''\2 c''\2 b'\2 ais'\2 a'\2 gis'\2 g'\2 fis'\2 f'\2 e'\2 dis'\2 d'\2 cis'\2 c'\2 b\2 g'\3 fis'\3 f'\3 e'\3 dis'\3 d'\3 cis'\3 c'\3 b\3 ais\3 a\3 gis\3 g\3 d'\4 cis'\4 c'\4 b\4 ais\4 a\4 gis\4 g\4 fis\4 f\4 e\4 dis\4 d\4 d\4 dis\4 e\4 f\4 fis\4 g\4 gis\4 a\4 ais\4 b8\4 < c'\4 cis'\4 d'\4 >4 < g''\5 gis''\5 a''\5 ais''\5 >8             }

First, that’s gruesome code formatting. Use line breaks to make your
code readable by splitting it into chunks that one may sensibly grasp.
Second, use bar checks in order to find rhythmic typos/errors.
Third, if you want breaks mid-note, use \remove "Forbid_line_break_engraver".

Best, Simon

This code is generated automaticly, nice isn't it?

No, it isn't.
If it *is* generated then nothing should stop you from generating it in a way that people you want to comment can actually read it.
Obviously that "endless string" is an  exciter? Frescobaldi will wrap the string if you change the editor preset in the menu.

As I have remarked, that the original long string was the output of a completestest written of a program for a program (therefore the "endless string") of an experimental program, not meant for any publication. It arrived the list because lilypond could not handle it in the 1st version. Certainly in the experimental phase I have to check it for corectniss and fed it into frescobaldi. Simply split it up:

list1 = str1.split( )
while (len(list1)):
    for word in list1[:5]:
        print(word, end = " ")
    print()
    list1 = list1[5:]

A for loop is possible as well. As frescobaldi is written mosty in python I have aded a simple python code. I have changed the string slightly so that lilypond does not have problems inserting tablines.
"Readable" result (change the parameters for another format):

fis'''4\1 f'''4\1 e'''4\1 dis'''4\1 d'''4\1
cis'''4\1 c'''4\1 b''4\1 ais''4\1 a''4\1
gis''4\1 g''4\1 fis''4\1 f''4\1 e''4\1
dis''\1 d''\1 cis''\1 c''\1 b'\1
ais'\1 a'\1 gis'\1 g'\1 fis'\1
f'\1 e'\1 dis'\1 d'\1 dis'''4\2
d'''4\2 cis'''4\2 c'''4\2 b''\2 ais''\2
a''\2 gis''\2 g''\2 fis''\2 f''\2
e''\2 dis''\2 d''\2 cis''\2 c''\2
b'\2 ais'\2 a'\2 gis'\2 g'\2
fis'\2 f'\2 e'\2 dis'\2 d'\2
cis'\2 c'\2 b\2 b''4\3 ais''4\3
a''4\3 gis''4\3 g''4\3 fis''4\3 f''4\3
e''4\3 dis''4\3 d''4\3 cis''4\3 c''4\3
b'4\3 ais'4\3 a'4\3 gis'\3 g'\3
fis'\3 f'\3 e'\3 dis'\3 d'\3
cis'\3 c'\3 b\3 ais\3 a\3
gis\3 g\3 < a\3 c'\2
d'\1 >4 < ais'\1 gis'\2
f'\3 >8 d\4 dis\4 e\4
f\4 fis\4 g\4 gis\4 a\4
ais\4 b\4 c'\4 cis'\4 d'\4
dis'\4 e'\4 f'\4 fis'\4 g'\4
gis'\4 a'\4 ais'\4 b'8\4 c''\4
cis''\4 fis\4 dis''\4 e''\4 f''\4
fis''\4 g'\5 gis'\5 a'\5 ais'\5
b'\5 c''\5 cis''\5 d''\5 dis''\5
e''\5 f''\5 fis''\5 g''\5 gis''\5
a''\5 ais''\5 b''\5 c'''\5 cis'''\5
d'''\5 dis'''\5 e'''\5 f'''\5 fis'''\5
g'''\5


The editor preset of frescobaldi is NOT to wrap long text. Change it if you are annoyed.

That doesn't really help. if the code is as unstructure as this. OK, it is not the only way to happiness, but there are many good reasons to format one's code so that it wraps reasonably by itself, that is usually by not exceeding ~80 characters per line.
Or of course less if there's useful sectioning available.
See above.


The question of lilypond setting barlines or not automaticly is still open in my opinion.  Lilypond is a nice program but does not use its intelligence perfectly for the good of the user.

Programs that use their "intelligence" in a way you suggest they should tend to know better than their users, which is not always the best choice.
Music notation is an absolutely rule based system, most often for this "machines" are doing better than humans.


Beside: There is spread a rumour on the list that I want lilypond to override my settings if wrong or not. But indeed I like to get informed by a warning etc.

If you want a warning then simply use the tools LilyPond provides for that: barchecks (and bar number checks). They are a great way of making your code better to understand, BTW.
Again old arguments. Imagine two experiments:

Case 1: I set an arbitrary bar (the manual calls it "bar check")
\version "2.19.80"
\relative { d''4  cis8  c8  b8. ais8  a  gis | }
That enables lilypond to checking the bar content and tells me in this case that the check failed ...
17/16 is > 4/4

Case 2: lilypond is setting the barline on the same position (wrong/critcal, however you might call it)
\version "2.19.80"
\relative { d''4  cis8  c8  b8. ais8  a  gis  }
The bar content is 17/16>4/4 again and tells NOTHING!
As there is set a barline lilypond can check the bar content and ....
Nobody has explained me why in this case lilypond should not be able to use its algorithm to find 17/16 ? The algorithm is existing - use it for this as well!



I would appreciate the code David Kastrup sent me referred to this "gruesome code" (thanks) becoming part of lilypond standard to get such a message to help dummy users as myself.

Regards

_______________________________________________
lilypond-user mailing list
address@hidden
https://lists.gnu.org/mailman/listinfo/lilypond-user


_______________________________________________
lilypond-user mailing list
address@hidden
https://lists.gnu.org/mailman/listinfo/lilypond-user
Regards




reply via email to

[Prev in Thread] Current Thread [Next in Thread]