{"action":"created","issue":{"url":"https://api.github.com/repos/lualatex/luaotfload/issues/303","labels_url":"https://api.github.com/repos/lualatex/luaotfload/issues/303/labels{/name}","comments_url":"https://api.github.com/repos/lualatex/luaotfload/issues/303/comments","events_url":"https://api.github.com/repos/lualatex/luaotfload/issues/303/events","html_url":"https://github.com/lualatex/luaotfload/issues/303","id":121232135,"number":303,"title":"problem loading opentype fonts with the calt feature: wrong 'backtrack' glyph order when implemented as contextual chaining substitution","user":{"login":"orchidee2","id":16224528,"avatar_url":"https://avatars.githubusercontent.com/u/16224528?v=3","gravatar_id":"","url":"https://api.github.com/users/orchidee2","html_url":"https://github.com/orchidee2","followers_url":"https://api.github.com/users/orchidee2/followers","following_url":"https://api.github.com/users/orchidee2/following{/other_user}","gists_url":"https://api.github.com/users/orchidee2/gists{/gist_id}","starred_url":"https://api.github.com/users/orchidee2/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/orchidee2/subscriptions","organizations_url":"https://api.github.com/users/orchidee2/orgs","repos_url":"https://api.github.com/users/orchidee2/repos","events_url":"https://api.github.com/users/orchidee2/events{/privacy}","received_events_url":"https://api.github.com/users/orchidee2/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":9,"created_at":"2015-12-09T12:58:26Z","updated_at":"2015-12-15T07:02:54Z","closed_at":null,"body":"Symptoms: the calt feature only works as expected, when the contextual substitution is applied to one of the first 2 glyphs of a word (phrase)\r\nprobable reason: the backtrack glyph order (glyphs before the glyph which is to be substituted) is swapped by the fontloader.\r\nThe following example was tested:\r\na font was modified with fontforge in a way, that it contains the following (useless) contextual substitutions (implemented as contextual chaining substitution):\r\n\tcat -> fat (1st glyph substitution)\r\n\tgrow -> glow (2nd glyph substitution)\r\n\tsell -> seal (3rd glyph substitution)\r\n\thand -> hang (4th glyph substitution)\r\nThe result for the first 2 substitutions is OK, for the last 2 no substitution was observed with enabled calt feature. But instead the following substitutions were found:\r\n        esll -> esal\r\n        nahd -> nahg\r\nWhen compiling the test document with xelatex, the result is as desired.\r\nAdditionally, I observed that the the calt feature, if implemented as normal contextual substitution (not contextual chaining substitution), doesn't work at all (but this is a different story)."},"comment":{"url":"https://api.github.com/repos/lualatex/luaotfload/issues/comments/164663754","html_url":"https://github.com/lualatex/luaotfload/issues/303#issuecomment-164663754","issue_url":"https://api.github.com/repos/lualatex/luaotfload/issues/303","id":164663754,"user":{"login":"orchidee2","id":16224528,"avatar_url":"https://avatars.githubusercontent.com/u/16224528?v=3","gravatar_id":"","url":"https://api.github.com/users/orchidee2","html_url":"https://github.com/orchidee2","followers_url":"https://api.github.com/users/orchidee2/followers","following_url":"https://api.github.com/users/orchidee2/following{/other_user}","gists_url":"https://api.github.com/users/orchidee2/gists{/gist_id}","starred_url":"https://api.github.com/users/orchidee2/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/orchidee2/subscriptions","organizations_url":"https://api.github.com/users/orchidee2/orgs","repos_url":"https://api.github.com/users/orchidee2/repos","events_url":"https://api.github.com/users/orchidee2/events{/privacy}","received_events_url":"https://api.github.com/users/orchidee2/received_events","type":"User","site_admin":false},"created_at":"2015-12-15T07:02:54Z","updated_at":"2015-12-15T07:02:54Z","body":"Thank you for your efforts. The result at the picture is as desired :-).\r\nSo, I have to wait until the new fontloader is ready."}}