Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

interwordspacetext not taken into account for bars #978

Closed
eroux opened this issue Feb 29, 2016 · 7 comments
Closed

interwordspacetext not taken into account for bars #978

eroux opened this issue Feb 29, 2016 · 7 comments

Comments

@eroux
Copy link
Contributor

eroux commented Feb 29, 2016

With the following example:

\documentclass[11pt]{article} % use larger type; default would be 10pt
\usepackage{fontspec}
\usepackage{graphicx}
\usepackage{geometry}
\geometry{a4paper}
\usepackage{gregoriotex}
\usepackage{libertine}
\begin{document}
\gresetbarspacing{new}
\gresetlastline{ragged}
\gresetinitiallines{0}
\gabcsnippet{(c3) am<v>\hbox to 0pt{\hss\rule{0.1mm}{3mm}}</v>(g) <v>\hbox to 0pt{\rule{0.1mm}{3mm}\hss}</v>E(g.) am<v>\hbox to 0pt{\hss\rule{0.1mm}{3mm}}</v>(g) (::) <v>\hbox to 0pt{\rule{0.1mm}{3mm}\hss}</v>E(j)}
\end{document}

I get

bugbars

in which the space between 'am' and 'E' seems to be less than interwordspacetext (between the texts of the syllables around the bar)... @rpspringuel do you have time to inspect that? (this is quite high priority)

@eroux eroux added this to the 4.1 milestone Feb 29, 2016
@rpspringuel
Copy link
Contributor

This behavior is because interwordspacetext@bars (0.15cm) is smaller than interwordspacetext (0.38cm) to the point that the spacing around the bar is becoming the requirement that has to be met. Indeed, interwordspacetext is not utilized at all in calculating the spacing for a bar syllable. Do you want me to institute a floor on the require space for the text equal to interwordspacetext?

@eroux
Copy link
Contributor Author

eroux commented Feb 29, 2016

Thanks for inspecting! Well, I admit I'm a bit puzzled... In this case, interwordspacetext is definitely a better value than interwordspacetext@bars, but maybe there should be an even higher value, maybe a new interwordspacetext@bars@notext? Looks like the most logical option here...

@eroux
Copy link
Contributor Author

eroux commented Feb 29, 2016

(Just to be clear, this new interwordspacetext@bars@notext should be used instead of interwordspacetext@bars when there is no text associated with the bar)

@eroux
Copy link
Contributor Author

eroux commented Feb 29, 2016

Thinking back about it, I think interwordspacetext@bars and interwordspacetext@bars@notext should probably be set on a per-bar-type basis... Does that sound reasonable?

@eroux
Copy link
Contributor Author

eroux commented Feb 29, 2016

Well, the per-bar-type interwordspacetext will be for 5.0 I guess, the change would be too big...

@rpspringuel
Copy link
Contributor

I'm working on implementing this and should have something posted in an hour or so.

For 5.0, I would not make this dependent on bar type. The spacing around the bar itself is already dependent on bar type. This has to do with the text, not the bar.

@eroux
Copy link
Contributor Author

eroux commented Feb 29, 2016

Thanks a lot! Well, I thought like you at the beginning but if you take (admittedly extreme) cases like testtttttttttttttttttttttttt(g) (,) g(g) and testtttttttttttttttttttttttt(g) (::) g(g) I think it would be normal that the second case have more space between the text of the two syllables... isn't it?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants