bugFree UCS Outline Fonts - Bugs: bug #39478, Serbian Italic SHA in the historic...

 
 

bug #39478: Serbian Italic SHA in the historic lookup

Submitter:  Rosella Capriotti <rosy58>
Submitted:  Sat 13 Jul 2013 04:14:18 PM UTC
   
 
Category:  individual character(s) Severity:  1 - Wish
Item Group:  character substitution issue Status:  Fix posted
Privacy:  Public Assigned to:  Stevan_White
Open/Closed:  Open Release:  * 2012-05-03
* Mandatory Fields

Add a New Comment Rich Markup
   

Jump to the original submission

Sun 11 Aug 2013 08:58:14 AM UTC, comment #17: 

Hi,

I just changed 'cv00' to 'cv01'.  It seems 'cv00' isn't a registered feature tag, although it is the first choice in Fontforge.

Steve White <Stevan_White>
Group administrator
Fri 02 Aug 2013 01:15:59 PM UTC, comment #16: 

I 100% agree, leave the character variant alone, other things are too ambiguous.

Rosella Capriotti <rosy58>
Fri 02 Aug 2013 10:03:10 AM UTC, comment #15: 

Hi,

The question of which lookup should apply this was most appropriate here has remained open.  The options have been
     'hist' historical variant
     'salt' stylistic alternate
     'cc00' character variant

Using 'fontspec' in XeLaTeX and LuaTeX, the usage of these seems very similar.

'hist' has advantage that it says something about the nature of the replacement.  You object--it really isn't "historical", as the style is still in use.

'salt' seems kind of generic -- and what if some other stylistic alternate comes along?

'cc00' is even more generic, but allows for another variant.
(Note: the spec permits these to be named, although FontForge doesn't seem to have any facility for it.  This would be ideal if the feature could be named "Alternate Italic sha")

Altogether, I guess we agreed the character variant was the best of the three.  In the interest of tidyness, I'll remove the others from the fonts.

Can we say this job is finished?

Steve White <Stevan_White>
Group administrator
Mon 15 Jul 2013 09:05:58 AM UTC, comment #14: 

By the way, if you want to take a look  at the manual, look here:
http://ctan.mirror.garr.it/mirrors/CTAN/macros/latex/contrib/fontspec/fontspec.pdf

I tried to upload it but it was too big, the site didn't let me do it.

Rosella Capriotti <rosy58>
Mon 15 Jul 2013 09:02:39 AM UTC, comment #13: 

Hello Steve,
Here I am, I was thinking about improving your example and maybe chapter 15 "Defining new features" of the fontspec manual has got what we need. It says it needs a feature tag, what's the feature tag of Serbian Italic SHA? Just give me the number, I'll take care of compilation, don't worry!
I hope it helps!

Rosella Capriotti <rosy58>
Sun 14 Jul 2013 08:15:26 PM UTC, comment #12: 

Hello Steve,
I'm really sorry, I'd the intention to do so, tonight I'm so busy and then I need to go to sleep because tomorrow morning I need to get up very early. I promise, I'll do so, by the way fontspec is the package that triggers XeLaTeX otherwise it's just plain LaTeX.
Please forgive me, I didn't mean to be rude. :)
Good night!

Rosella Capriotti <rosy58>
Sun 14 Jul 2013 08:00:43 PM UTC, comment #11: 

Hi,

Some of this is wandering from FreeFont issues...

I was really hoping you could improve the test file.
I'm trying to load the packages you list, but some aren't even installed in my system yet...

I was under the impression that xelatex assumes the content is Unicode...  What am I missing?

Now I'm a little clearer on the practical nature of your LaTeX problem.  It might help to have a small example.

Is the 'hist' approach any different?

As to turning on individual glyphs (as in 'aalt' and perhaps 'salt') I know only what I've read in the pages I pointed you to -- I've never seen this used in real software.  And I only imagined it being used in a GUI app.

However, for these 'fontspec' warnings, I suspect there is a "right" way to use the macros \newfontfamily (or something like that), which avoids them, somehow stating explicitly which faces have the 'salt' feature, and which don't. 

I just don't know what that is.

Otherwise, it seems that it tries to find a requested feature in every face of a font, although there is no reason that all faces should share a feature.  Really, this strikes me as something that could be improved on the software side -- with a more intellegent inspection of font features.

Steve White <Stevan_White>
Group administrator
Sun 14 Jul 2013 07:34:41 PM UTC, comment #10: 

Hello Steve,

Forget about the en-dash, it's incorrect, the dictionary uses it on top of T, as you can see, but it's faulty, forget about it, it must be an em-dash, I can certify it 100%.

What you did is not XeLaTeX but plain LaTeX, it's a miracle you managed to compile it at all, LaTeX is not suitable but for standard Roman fonts, to get Cyrillic stuff you need to load at least the fontspec, xunicode and xlxtra packages plus polyglossia for hyphenation.

As for Style=Alternate, yes I do so, but as I complained to you a couple of days ago, it shows tons of error messages because salt works only for the combination Serbian+Cyrillic+Italic/Italic Bold, in all other cases it shows error messages and this slows down massively the compilation time of a book (100+ pages) and sometimes it even crashes. Clearly a better alternative must be found.

So, Ichecked the fontspec manual but it provides me with no clue as for turning on individual glyphs, enabling salt or hist can be a workaround in FreeSerif, but what about fonts that bundle in strange ligatures or other weird stuff? I don't want to be forced to buy the whole package, I just want a function that allows me to get this glyph.

I'm going to ask some XeLaTeX pro and I'll let you know,

Rosella Capriotti <rosy58>
Sun 14 Jul 2013 07:12:23 PM UTC, comment #9: 

Wow that's a nice picture.

Interesting, the line over the te and under the sha is quite short- like a macron.  Yet I have seen it much longer, as wide as the letter itself.  In FreeSerif I took a middle width.  I wonder what's best.

As to the 'hist' replacement:
Look, it's easy to remove.  Please just try it out, see how it sits tomorrow.

The advantage is, I think you can turn 'hist' on globally with XeLaTeX or with modern CSS in web browsers.  As I read 'salt', some implementations may not allow that.

I tried XeLaTeX.  The 'salt' feature is enabled by Style=Alternate; the 'hist' by Style=Historic. 

Please have a look at my LaTeX file--it still complains a lot (and maybe you could suggest a better selection of words.)

(file #28573)

Steve White <Stevan_White>
Group administrator
Sun 14 Jul 2013 06:09:31 PM UTC, comment #8: 

Hello Steve,
Here I am with a scannerised page containing our beloved glyph. It belongs to a Serbian Dictionary published in 2004, so it's clearly mainstream literature, no vintage/archaic stuff.
I must say I'm kind of opposed to its inclusion in the historic table, because I think recognisability should be the criterion of discrimination: you were comparing this glyph with the long "s" but the English public isn't familiar with the long "s" and doesn't recognise it as non-final version of the short "s". On the contrary, the Serbian public does recognise the italic sha with an em-dash underneath as a variant of "sha", albeit a bit old-fashioned. I hope you get my point.
Regards,


Rosella Capriotti <rosy58>
Sun 14 Jul 2013 02:19:33 PM UTC, comment #7: 

Hello Steve,
I beg your pardon, do you know how it's done, how mean how I can turn on a single glyph in XeLaTeX? If you don't know, don't bother I'll ask in a forum. But that's why I asked you to implement stylistic sets, because they're easy to use in XeLaTeX, raw features require a good deal of programming.
Regards,

Rosella Capriotti <rosy58>
Sun 14 Jul 2013 01:34:47 PM UTC, comment #6: 

Rosella,

> You mean it's possible to activate just an alternative glyph for one character
> alone?


Sure.  You know, the font tables are only instructions for the font rendering libraries. The libraries could do anything they want with the glyphs, in principle.

My understanding of the descripton of 'aalt' and 'salt' suggests that their purpose is to provide the user a list of alternatives.

> Are we talking about stylistic sets?


No, they're either on or off, and just do a set of replacements.

> By the way, I have one question
> about the activation of this glyph: FontForge says it's activated through
> salt, no mention of locl, but does it mean it will appear even in a Russian
> text, if one turns salt on? This is inappropriate, the glyph should ideally be
> the combination of locl+salt not just salt alone.


Each lookup table in the font has a script-language list. 
Normally the table is not activated unless the current script and language of the text matches something in the table's list.
(There are also default script and default language, but the logic is messy.)

The usual application of the 'locl' table is to do substitutions on the basis of language alone (such as the common Serbian Cyrillic italic letters).  But it's just another table.

As I have (re-) discovered today, 'salt' permits two possible interpretations, either ON-OFF, or like 'aalt', to provide a list of alternatives.

But no, normally the script-language match overrides the application activation.
That is, if a feature is "active" for some text, but the script-language doesn't match,
then the feature is not applied.

> And what's more, I suggest
> you make use of stylistic sets, just as Alexey does (you remember the manual
> of his Greek fonts?). I see you have implemented it rather inconsistently for
> Italic Serbian "de" alone, but I can't to understand why you did it and why
> for this glyph alone. My take is that stylistic set should be implemented to
> turn on "sha", but on the understanding that it will do so only if
> Language=Serbian.
>

I hope I explained above that this specificity by language is already taken care of.

Style sets are an option, but I haven't implemented any for Serbian at all.  At this point, for our purposes, I don't see much advantage in Style Sets.

Cheers!

Steve White <Stevan_White>
Group administrator
Sun 14 Jul 2013 12:37:09 PM UTC, comment #5: 

You mean it's possible to activate just an alternative glyph for one character alone? Are we talking about stylistic sets? By the way, I have one question about the activation of this glyph: FontForge says it's activated through salt, no mention of locl, but does it mean it will appear even in a Russian text, if one turns salt on? This is inappropriate, the glyph should ideally be the combination of locl+salt not just salt alone. And what's more, I suggest you make use of stylistic sets, just as Alexey does (you remember the manual of his Greek fonts?). I see you have implemented it rather inconsistently for Italic Serbian "de" alone, but I can't to understand why you did it and why for this glyph alone. My take is that stylistic set should be implemented to turn on "sha", but on the understanding that it will do so only if Language=Serbian.

Rosella Capriotti <rosy58>
Sun 14 Jul 2013 12:23:14 PM UTC, comment #4: 

Hi,

Well, this is an example of good decision making.  We weigh the alternatives.

Regarding the alternate sha, as I said, we don't have a finer distiction regarding 'historicity'.  But as far as I know, none is required here.

Among the glyph substitution (GSUB) tables, there are sort-of-official distinctions in how and when the tables are to be used.  This is usually discussed in the registry link I posted.

Some "Alternate" GSUBs are not intended to be activated automatically.  Instead they provide a list, which the application can display for the user to choose from.  These are mostly of use in GUI applications.

The 'salt' table could be implemented either way, depending on how many alternates are provided.  (It's a little hazy just how this is supposed to work.)

The 'hist' table in contrast just substitutes one glyph for another.  It is normally off, but could be turned on globally.

Steve White <Stevan_White>
Group administrator
Sun 14 Jul 2013 10:49:11 AM UTC, comment #3: 

Wait, I see you're moving towards my position while I'd come to accept yours: according to your criterion, this glyph cannot be considered a historic one, because it does occur sometimes in some modern publications, like my pocket Serbian dictionary. I'm going to provide you with a scannerised page of it as soon as I find out where I put it :)
Another thing: I thought "salt" is a substitution table just like "hist", both of them apply virtually to all glyphs, don't they?

Rosella Capriotti <rosy58>
Sun 14 Jul 2013 10:11:40 AM UTC, comment #2: 

Rosella,

I just realized part of what I wrote is mistaken.  I was missing the aspec that the features are meant to be implemented differently.  'salt' is meant to provide a list of alternate glyphs for a character, to be applied individually, while 'hist' is meant to be turned on or off for a block of text.

This removes most of my objection.

Concerning how old the use of the glyph is... I can think of a couple of examples where it would have been nice to have a finer distinction regarding age, but we don't really have that.

So, I think I'll go ahead and follow your request.

Steve White <Stevan_White>
Group administrator
Sat 13 Jul 2013 08:25:00 PM UTC, comment #1: 

Hi, this is worth considering.

I doubt the wisdom having two different features do the same thing.  Surely the whole point of having separate features is to get different effects.

In FreeFont, we have so far reserved 'hist' features for ones that are not just old-fashioned -- that are rather never used in normal modern writing, and only used, say, to display old literary works, for example, the long-s in English and German, which went out of fashion 200 years ago in English, and maybe 100 years ago in German.

But that's just our rule of thumb.  The standards are pretty flexible.

Look for 'hist' and 'salt' in the Feature Registry:
http://www.microsoft.com/typography/otspec/featurelist.htm

Rosella, if you could locate some documentation that clarifies the status of this sign, that might help.  Just how old is this?  Does anybody still print this letter on a regular basis?

Steve White <Stevan_White>
Group administrator
Sat 13 Jul 2013 04:14:18 PM UTC, original submission:  

Hello Steve,
Since this shape is rather old-fashioned (I do like it and use it but it isn't mandatory anymore) I think it' be good to include it in the historic lookup too.
Regards.

Rosella Capriotti <rosy58>

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:
   
   
Comment:
   

Attached Files
file #28573:  Serbian-ital-styles.tex added by Stevan_White (1KiB - application/x-tex)

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by Stevan_White (Posted a comment)
  • -email is unavailable- added by rosy58 (Submitted the item)
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only logged-in users can vote.

     

    Follow 6 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2013-07-14 Stevan_White Attached File- Added Serbian-ital-styles.tex, #28573
    2013-07-14 rosy58 Attached File- Added Modern Serbian Dictionary.jpg, #28571
    2013-07-14 Stevan_White StatusNeed info Fix posted
    2013-07-13 Stevan_White Severity3 - Normal 1 - Wish
        StatusNone Need info
        Assigned toNone Stevan_White

    Back to the top

    Powered by Savane 3.13-758e.
    Corresponding source code