| 00:10 | <Philip`> | http://fonts.philip.html5.org/ |
| 00:11 | <Philip`> | Now with more exciting front-end |
| 00:11 | <Philip`> | and occasional ligature support, at least for cases like "ff" in the DejaVu fonts |
| 00:12 | <Philip`> | Also it violates the licences of some of the fonts, but please don't notice that |
| 00:12 | <Philip`> | Oh, and it adds IE support too |
| 00:13 | <Hixie> | for the fonts that are available freely, it would be useful to be able to download the fonts so that the author can try them on his site |
| 00:13 | <Hixie> | and it would be useful to be able to point the script at a site and have it fetch all the files and figure out what characters are needed |
| 00:13 | <Hixie> | by parsing the html and css and applying the css even :-) |
| 00:14 | <takkaria> | and executing the JS? :) |
| 00:14 | <Hixie> | sure! |
| 00:16 | <Philip`> | It wouldn't seem infeasible to let people specify an HTML file and a CSS class name, and have it extract the characters from that |
| 00:16 | <Philip`> | but I guess it's more important to have the basics working first, before adding fancy features like that :-) |
| 00:16 | Philip` | fixes some bugs so now it should handle Unicode characters too |
| 00:23 | <Philip`> | It's already much more useful than http://www.fontembedding.com/eot/ which just lets you take a perfectly good font and then limit it so it can only work on your own domain, and then gives you a "Unable to load DLL 'makeeot.dll': The specified module could not be found. (Exception from HRESULT: 0x8007007E)" |
| 00:35 | <Hixie> | christ, as if xslt wasn't enough: http://www.xsharp.org/samples/ |
| 00:45 | <roc> | it might be better then XSLT if it doesn't pretend to not be a programming language |
| 00:47 | <roc> | uh oh |
| 02:54 | <MikeSmith> | Hixie: about attributes that are new to HTML5, e.g., ping and sizes |
| 02:56 | <MikeSmith> | Hixie: the HTML5 spec doesn't say anything about whether conformant UAs must expose those new attributes as properties, right? |
| 02:58 | <MikeSmith> | I mean about supporting them in addition to generic methods; e.g, link.sizes in addition to just link.getAttribute('sizes') |
| 03:01 | <Lachy> | MikeSmith, the spec lists sizes in the HTMLLinkElement interface |
| 03:01 | <MikeSmith> | ah, yeah, OK |
| 03:01 | <Lachy> | and ping in the HTMLAnchorElement interface |
| 03:01 | <MikeSmith> | I see |
| 03:02 | <MikeSmith> | what about the data-* attributes? |
| 03:03 | <Lachy> | there's a dataset api http://www.whatwg.org/specs/web-apps/current-work/#dom-dataset |
| 03:28 | <heycam> | annevk, (re event handler attribute definitions) yeah it would be good to have a common place that defines those |
| 03:28 | <heycam> | what does html5 have atm, EventListener or so? what makes that not enough? |
| 03:29 | <Hixie> | http://www.whatwg.org/specs/web-apps/current-work/#event-handler-attributes is what html5 has |
| 03:30 | <Hixie> | i don't think webidl is the right place for it |
| 03:30 | <Hixie> | dom events, maybe |
| 03:30 | <heycam> | yeah sounds like it |
| 03:31 | <Hixie> | i think it's fine to have it in html5 for now |
| 03:31 | <heycam> | Hixie, in that section: "The second way is as as an ..." |
| 03:37 | <Hixie> | thanks |
| 06:04 | <zcorpan__> | hmm, http://fonts.philip.html5.org/ doesn't work for me in opera now |
| 06:08 | <zcorpan__> | and ie8 |
| 07:57 | <hsivonen> | Philip`: shouldn't CSS 'format' for .ttf be format("truetype") and format("opentype") for .otf? |
| 08:34 | <Philip`> | hsivonen: Not really - the fonts are OpenType, and the OpenType spec says "OpenType fonts may have the extension .OTF or .TTF" |
| 08:34 | <hsivonen> | Philip`: do all of Firefox, Safari and Opera support CFF outlines on all their platforms? |
| 08:34 | <Philip`> | (or at least it says that for fonts with TrueType outlines) |
| 08:35 | <Philip`> | hsivonen: No idea, I've only been looking at TrueType-outline ones |
| 08:36 | <hsivonen> | http://www.w3.org/TR/css3-webfonts/#src |
| 08:36 | <Philip`> | zcorpan: Oops, looks like Opera only likes format("truetype") and not format("opentype") |
| 08:36 | <hsivonen> | how do I, as an author, tell if a font is "TrueType" or "TrueType Open"? |
| 08:38 | <annevk> | DOM Events would work, but that's not moving... |
| 08:38 | <annevk> | And since we could invent some special type of interface... On the other hand, that might make Web IDL depend on HTML5 depending on how it's defined... |
| 08:40 | <hsivonen> | yay for SSL. fedorahosted.org's cert expired half an hour ago--blocking access to Liberation fonts |
| 08:40 | <annevk> | Hixie, where is it defined that things bubble from Document to Window? |
| 08:40 | <jwalden> | yay for fedorahosted.org and the provider of its cert, more correctly |
| 08:40 | <annevk> | Hixie, and if load is just dispatched on Window, how does document.onload work? |
| 08:42 | <Philip`> | zcorpan: I've changed it to lie about being format("truetype") now, so it seems to work in Opera |
| 08:43 | <Philip`> | zcorpan: It worked for me in IE8 before these changes, and still works, so I'm not sure why it wouldn't work for you |
| 08:44 | <Philip`> | hsivonen: As an author, you probably do what I do and assume you might as well say they're OpenType because that's a superset of TrueType, and then find it doesn't work in Opera and so say they're TrueType instead :-) |
| 08:44 | <annevk> | why do you use format() at all? |
| 08:45 | <annevk> | and please file bugs :) |
| 08:45 | <Philip`> | To stop browsers wasting time downloading formats they can't understand |
| 08:45 | <annevk> | and how do you make it work in IE? |
| 08:46 | <hsivonen> | Philip`: also, with Free fonts that have both .ttf and .otf available, I have no idea which one I should want except that CFF outlines don't work in Prince yet |
| 08:46 | <Philip`> | though it's not a very successful plan, because it results in IE downloading both 'foo.eot' and 'foo.ttf) format("truetype"), url(foo.eot' |
| 08:47 | <Philip`> | Oops, I mean 'foo.ttf) format("truetype"), url(foo.eot) format("embedded-opentype"' |
| 08:48 | <hsivonen> | so far, I've noticed that Firefox has superior ligature support compared to Opera and Safari on Mac |
| 08:48 | <zcorpan> | Philip`: oh, i had disabled "Font download" in ie |
| 08:48 | <Philip`> | annevk: By providing EOT files to IE |
| 08:48 | <annevk> | well yeah, that's clear by now :p |
| 08:48 | <Philip`> | zcorpan: I can imagine that would hamper its ability to download fonts :-) |
| 08:49 | <zcorpan> | Philip`: you can reduce the number of 404s by using conditional comments, but dunno about a css-only solution |
| 08:50 | <Philip`> | zcorpan: Could that be done in a forward-compatible way? |
| 08:51 | <Philip`> | zcorpan: I want something that'll work in IE9 if they don't change their font support at all (so it needs a @font-face with the .eot, and with no format("...") because IE can't parse that), but will also work if they implement the new @font-face syntax and either do or don't add support for .ttf |
| 08:51 | <hsivonen> | still, my main concern is that TrueType rendering on Windows is so different from Mac and Linux that it'll be easy to create pages on Mac and Linux and have the page go unreadable on Windows |
| 08:53 | <Philip`> | hsivonen: Look at the FFF Tusj Bold example on my page - it's awful in Safari on Windows, differently awful in IE8 on Windows, even more broken in Opera on Linux, and works fine in Opera on Linux |
| 08:53 | <zcorpan> | Philip`: then i guess only by serving IE9 what you have now |
| 08:53 | <zcorpan> | which makes it all very crufty |
| 08:53 | <Philip`> | zcorpan: Indeed :-( |
| 08:55 | <zcorpan> | Philip`: "even more broken in Opera on Linux, and works fine in Opera on Linux" - i guess you meant windows for one of them? :) |
| 08:55 | <Philip`> | zcorpan: Oh |
| 08:55 | <Philip`> | zcorpan: No, I meant "Firefox" for the second one |
| 08:55 | <zcorpan> | ah |
| 08:56 | <Philip`> | Opera seems to only use the font for the "us" and "Bol" parts when rendering the font's name |
| 08:57 | <Philip`> | though it works fine with the original non-subsetted .ttf, so it could be the result of a bug in my code |
| 08:58 | <Philip`> | hsivonen: Ligatures seem to work for me in Firefox on Linux and IE on Windows, and not in Opera on Linux or Safari on Windows |
| 08:59 | <hsivonen> | Philip`: my understanding is that Safari intentionally prefers speed over prettiness here |
| 09:00 | <hsivonen> | I think it's discriminatory to turn off ligatures for Latin while supporting them for some other scripts |
| 09:01 | <Philip`> | Preferring anything over prettiness seems contrary to the whole Mac culture :-) |
| 09:01 | <jgraham> | hsivonen: I thought ligatures made a big difference in othr scripts to the shape so the word looked totally wrong whereas in latin it is only a minor aesthetic difference that only matters at small font size |
| 09:02 | <Philip`> | hsivonen: It doesn't seem that discriminatory, since for Latin it just makes some character sequences look a bit better, while other scripts are entirely unreadable unless you have ligatures |
| 09:02 | <jgraham> | (totally wrong without ligatures) |
| 09:02 | <Philip`> | Oh, what jgraham said |
| 09:02 | <Philip`> | jgraham: Ligatures matter in Latin at large font sizes too |
| 09:02 | <jgraham> | Philip`: I thought they generally looked weird at large font sizes |
| 09:03 | <jgraham> | But maybe I am wrong |
| 09:03 | <jgraham> | (do you have nice examples?) |
| 09:04 | <hsivonen> | jgraham: the word "Quirks" looks great in Linux Libertine in Firefox on Mac |
| 09:04 | <hsivonen> | not so great in Safari |
| 09:04 | <zcorpan> | Philip`: for some reason opera seems to use the font on the index page instead of the generated font, or at least i get the glyphs for "ABCFTabcdjlosu123;" instead of those for "Testing abc" |
| 09:05 | <Philip`> | jgraham: Try http://fonts.philip.html5.org/ and DejaVu Serif and "fluffily affable fish" in recent Firefox, and try changing the text size |
| 09:06 | <Philip`> | zcorpan: Oh, I guess it's possible that it's caching fonts by their internal name, or something |
| 09:07 | <Philip`> | zcorpan: (and all the subsetted fonts have the same name regardless of which characters are included in them) |
| 09:08 | Philip` | sees that his font service is pretty slow for DejaVu fonts :-( |
| 09:14 | <zcorpan> | Philip`: i guess we should change that then if font subsetting is supposed to work (or everyone doing font subsetting needs to change the internal name) |
| 09:17 | <hsivonen> | zcorpan: caching fonts by font name seems like a security hole |
| 09:17 | <hsivonen> | zcorpan: an attacker can serve a font with misleading glyphs, have it stick into the cache and then wait for the user to navigate to another site using the font |
| 09:18 | <hsivonen> | the browser should instead generated Origin-scoped unpredictably random names for the fonts |
| 09:18 | <hsivonen> | *generate |
| 09:18 | <zcorpan> | hsivonen: the cache doesn't work cross origin |
| 09:18 | <hsivonen> | ah |
| 09:19 | <zcorpan> | actually i think it shouldn't work cross document |
| 09:19 | <Philip`> | zcorpan: I'm already intending to change my code to give a random meaningless name to each font, since the Open Font License doesn't let you use any of the words of the original font's name |
| 09:19 | <Philip`> | zcorpan: so I don't think it's a practical issue for me |
| 09:19 | <zcorpan> | Philip`: ok |
| 09:19 | <hsivonen> | Philip`: you could also just do an MD5 on the resulting font data |
| 09:19 | <Philip`> | zcorpan: but it does seem confusing and wrong if fonts are shared based on some internal details that the user might not ever see |
| 09:19 | <hsivonen> | that would give the same name to the same subset each time |
| 09:20 | <Philip`> | hsivonen: That would be hard, because the font's name is part of the font data :-) |
| 09:20 | <jgraham> | Philip`: That more or less meets my definition of ugly :) (I like the fl ff and fi ligatures at small font size but not at large font size) |
| 09:20 | <Philip`> | zcorpan: (as opposed to URL or something like that) |
| 09:20 | <Hixie> | annevk: only opera has document.onload |
| 09:20 | <Hixie> | annevk: http://www.whatwg.org/specs/web-apps/current-work/#events-and-the-window-object |
| 09:21 | <Philip`> | hsivonen: but md5(original-font-file + list-of-characters-in-subset) seems like it should work fine |
| 09:22 | <Philip`> | jgraham: Doesn't the non-ligatured version look uglier with its narrow separated 'f's? :-) |
| 09:23 | <zcorpan> | Philip`: yep, i'm filing a bug about it |
| 09:25 | <Philip`> | zcorpan: Okay, thanks |
| 09:25 | <annevk> | Hixie, I see |
| 09:26 | <annevk> | I updated http://wiki.whatwg.org/wiki/HTML5_Presentations by the way, but I think it's far from complete |
| 09:26 | <annevk> | maybe I should ask on the blog if people want to contribute to it |
| 09:27 | <jgraham> | Philip`: No, I think it looks better |
| 09:27 | <jgraham> | :p |
| 09:36 | annevk | finds http://www.cs.tut.fi/~jkorpela/HTML4.0/comments.html |
| 09:41 | <Philip`> | "In printed form, the HTML 4.0 draft is about 265 printed pages long, and it still contains empty parts to be added later. Compared with the about 77 pages of HTML 2.0, this exhibits an intolerable trend." - seems like the trend is still continuing |
| 09:47 | <hsivonen> | looks like Yucca has noticed the bogosity of the term 'internationalization' back then |
| 09:48 | <hsivonen> | 'Multilingual support should be labeled as such, or as language-specific support, not as "internationalization". (Typically, multilingualism is important for national documents, whereas most international documents use just English.) ' |
| 09:51 | <hsivonen> | is the part about "Further replacements for EM might be something like the following: " serious and not demonstrating the absurdity of semantics? |
| 10:04 | <annevk> | if you ignore the RDF bit http://www.w3.org/2005/Talks/05-steven-xtech/ could basically be a talk about HTML5 :) |
| 10:06 | <hsivonen> | annevk: not really. "As generic XML as possible: if a facility exists in XML, try to use that rather than duplicating it." |
| 10:07 | <annevk> | oh right, I should've mentioned excluding that line too |
| 10:07 | <annevk> | though actually I think we have |
| 10:07 | <annevk> | we are using SVG and MathML rather than inventing new vector and math markup |
| 10:07 | <annevk> | we encourage people to use xml:lang and xml:base in the XML serialization |
| 10:08 | <annevk> | though maybe I'm twisting things too much now :) |
| 10:09 | <hsivonen> | xml:base might be a bit mistake, but I guess it's too late to get rid of it now |
| 10:09 | <Hixie> | xml:base makes sense in machine-generated xml environments |
| 10:09 | <Hixie> | it's a pain on the web |
| 10:10 | <hsivonen> | actually, xml:base is just one of the many things that flow out of the problem of URIs being too long |
| 10:12 | <Hixie> | not really |
| 10:12 | <Hixie> | doesn't matter how long urls are, sometimes relative urls are a good thing |
| 10:14 | <Hixie> | uncs are pretty terse, and they'd still need xml:base if you generated compound documents from unrelated bits |
| 10:54 | <annevk> | my weblog no fails to render properly in all stable releases of browsers |
| 10:54 | <annevk> | zen |
| 10:54 | <annevk> | s/no/now/ |
| 10:55 | <virtuelv> | also "SVG sucks" |
| 10:55 | <annevk> | thanks to zcorpan, rubys, and Robbert Broersma |
| 10:56 | <zcorpan> | oooh |
| 10:56 | <virtuelv> | annevk: you should've used a web font |
| 10:56 | <annevk> | virtuelv, I use two |
| 10:56 | <virtuelv> | not in the logo? |
| 10:56 | <annevk> | how's that? |
| 10:57 | <annevk> | name me a font that can render the logo :) |
| 10:57 | <annevk> | (Weblog 4.2 is rendered using a normal font though) |
| 10:57 | <virtuelv> | annevk: make your own :D |
| 10:58 | <annevk> | I think using SVG is cheaper ;) |
| 10:58 | <hsivonen> | annevk: SVG fonts! |
| 10:59 | <virtuelv> | there's also something odd about an image of Mandrake next to a screenshot from Ubuntu |
| 10:59 | <virtuelv> | you should replace it with a trace of Mark Shuttleworth |
| 10:59 | <virtuelv> | svg, of course |
| 10:59 | <annevk> | you can do that on your own blog ;) |
| 11:00 | <virtuelv> | meh, neh |
| 11:00 | <virtuelv> | I'll keep the orange to annoy a co-worker |
| 11:01 | <Hixie> | svg fonts from the html would be a pretty awesome way to do it |
| 11:01 | <Hixie> | if you want things to not work |
| 11:01 | <Hixie> | :-) |
| 11:01 | <zcorpan> | annevk: what did Robbert Broersma do, btw? |
| 11:01 | <annevk> | that actually works in Safari and Opera I think, might even be in Safari 3.1 |
| 11:01 | <annevk> | zcorpan, making the menu in CSS ages ago |
| 11:02 | <zcorpan> | annevk: ah ok |
| 11:02 | <annevk> | though he hadn't done the font embedding hting |
| 11:03 | <annevk> | it seems Opera requires a reload for SVG images loaded through the content property when the content property is applied to an element? |
| 11:03 | <annevk> | o_O |
| 11:04 | <annevk> | also, the daddy font doesn't work in Opera 10 but does in non-branched stuff |
| 11:04 | <annevk> | hmm |
| 11:04 | <zcorpan> | annevk: seems to work for me |
| 11:05 | <zcorpan> | oh wait |
| 11:05 | <zcorpan> | yeah i get the first bug |
| 11:06 | <annevk> | the font thing might be Linux only |
| 11:08 | <zcorpan> | annevk: should i file a bug for the reload thing? |
| 11:09 | <annevk> | please |
| 11:13 | <annevk> | zcorpan, it seems to be a bug for 'content' on ::after as well |
| 11:13 | <annevk> | zcorpan, so it's slightly less weird I suppose |
| 11:20 | <zcorpan> | it just doesn't happen for daddy.svg? |
| 11:25 | <annevk> | zcorpan, it does |
| 11:25 | <annevk> | at least, when I tested again in core-2.3... |
| 11:27 | <zcorpan> | weird, doesn't happen for me |
| 11:34 | <Lachy> | annevk, why doesn't Opera 10 render the web font for the left navigation menu? |
| 11:34 | <Lachy> | it looks like only webkit is getting that right |
| 11:34 | <annevk> | might be a Mac issue |
| 11:34 | <annevk> | it does on Linux |
| 11:34 | <Lachy> | ok. I'll try windows |
| 11:37 | <Philip`> | Someone ought to write a web browser that isn't rubbish |
| 11:37 | <Philip`> | If you could write a web page and it would actually work, that'd be a great step forward |
| 11:37 | <Lachy> | Philip`, we're hiring if you would like to help with that :-) |
| 11:39 | <Philip`> | Lachy: Sadly I've got a PhD I need to finish first, which will keep me occupied for the next couple of years :-) |
| 11:40 | <Lachy> | what topic are you doing your PhD on? |
| 11:40 | <Philip`> | It's some kind of network routing stuff |
| 11:47 | <annevk> | zcorpan, weird indeed, because now it does load again... |
| 11:49 | <zcorpan> | annevk: now i could reproduce the :after bug in opera 10 |
| 11:50 | zcorpan | confused |
| 11:53 | <annevk> | cc rune and let him figure it out? :) |
| 11:54 | <Lachy> | annevk, the menu font works on windows, so it must be a Mac bug |
| 11:54 | jgraham | likes the way that Philip` is so vauge about his PhD |
| 11:55 | <Philip`> | jgraham: That's because I don't really know what I'm doing :-p |
| 11:56 | <zcorpan> | Philip`: or because you can figure it out when you start working on it? |
| 11:56 | <Philip`> | zcorpan: I've been working on it for a year already :-) |
| 11:56 | <zcorpan> | Philip`: ah. how far have you come? |
| 11:57 | jgraham | found that a lot of his PhD was thinking of cool things that would be useful then finding that they were too hard to actually do so doing easier but less cool things instead |
| 11:58 | <jgraham> | Also PhD-related protip: never ask PhD students how far thay have got. |
| 11:59 | <Philip`> | I'm working as part of a smallish group (about six people), so mostly I've been learning what other people have been doing and writing some code to make things work and planning what I ought to spend the next couple of years working on :-) |
| 11:59 | <jgraham> | (If you don't understand why go waste an afternnon reading Piled Higher and Deeper sometime) |
| 11:59 | <jgraham> | http://www.phdcomics.com/ |
| 12:02 | <annevk> | Lachy, can you file it, since you have a Mac and all? :) |
| 12:03 | <annevk> | my Macbook is elsewhere atm |
| 12:03 | <Lachy> | ok, I'll add it to my list of other bugs I really need to get filed today |
| 12:13 | <annevk> | Opera's fallback for 'content' is also screwed I notice, but I think it might be per the current draft, but not per the agreed upon changes to the current draft |
| 12:13 | <annevk> | might be correct* |
| 12:21 | <Hixie> | nn |
| 12:21 | <annevk> | g'night |
| 12:32 | <Lachy> | what's the best way to make a test case for a web font that relies on the correct rendering of the downloaded font, and still make it clear what the result should look like? |
| 12:33 | <Lachy> | should I just include an image of the font in the TC for testers to compare it with? |
| 12:33 | <hsivonen> | Lachy: depends on how complex the determination of "correct" is |
| 12:34 | <hsivonen> | Lachy: for mere @font-face presence checking, you could use the Ahem trick Hixie used for Acid 3 |
| 12:37 | <annevk> | Lachy, does it rely on correct rendering? you could e.g. say "The following two lines should have different fonts" "line 1" "line 2" first styled with font-family:custom,serif and the second with font-family:serif |
| 12:37 | <zcorpan> | Philip`: you could make the bogus 404 url redirect to the eot (or make a copy of the eot file with the bogus file name) |
| 12:37 | <annevk> | for correct rendering a screenshot would be best I suppose |
| 12:37 | <zcorpan> | Philip`: basically the same idea as http://annevankesteren.nl/2005/10/ie-import-hack |
| 12:40 | annevk | reads that post again and almost gets upset again by the comments |
| 12:41 | <annevk> | aah, a fresh Firefox nightly renders the fonts for the menu and heading correct, but it doesn't do any of the content property thingies |
| 12:42 | <annevk> | and thanks to the new style rules for the search form it no longer overflows, but I think that's a bug with the new style rules :) |
| 12:42 | <annevk> | (i.e. not something that was fixed) |
| 12:43 | <zcorpan> | annevk: that would be min-width on body |
| 12:45 | <hsivonen> | annevk: is there any UA that renders your new blog heading correctly? |
| 12:45 | <annevk> | Opera 10 alpha after a refresh |
| 12:46 | <annevk> | though maybe only on non-Mac platforms |
| 12:46 | <hsivonen> | I see. Refrest fixed your name but "Weblog 4.2" is still ugly |
| 12:46 | <hsivonen> | *Refresh |
| 12:47 | <annevk> | yeah, apparently that font doesn't work well on Mac yet |
| 12:47 | <hsivonen> | annevk: some weird TTF tables? |
| 12:47 | <hsivonen> | or lack thereof? |
| 12:47 | annevk | is a font noob |
| 12:47 | <annevk> | Lachy will find a bug so supposedly I'll find out when they debug it :) |
| 12:48 | <annevk> | s/find a bug/file a bug/ |
| 12:48 | <annevk> | duh |
| 12:52 | <Philip`> | Lachy: You could make the downloaded font a serif one, and the page's default font a sans-serif one, and say "This line should have a serif font", and hope the testers understand what that means |
| 12:52 | <hsivonen> | annevk: I disagree about the gracefulness of the degradation of the blog title |
| 12:52 | <Philip`> | http://www.webfonts.info/wiki/forum/viewtopic.php?f=5&t=7 seems a nice way of testing specific font-rendering features |
| 12:53 | <hsivonen> | annevk: "Kesteren" is virtually unreadable in Firefox 3.0.x |
| 12:53 | <Philip`> | (The font is set up so that e.g. the string "ab" is treated as a ligature and rendered as "liga [tick]" if it's working correctly) |
| 12:54 | <hsivonen> | why is "TEST" blinking in Firefox? |
| 12:54 | <hsivonen> | annevk: whoa! you actually used text-decoration: blink!!! |
| 12:55 | <annevk> | hsivonen, with graceful I meant that you can read the content, not that the heading is necessarily usable |
| 12:55 | <hsivonen> | annevk: ok |
| 12:56 | <Philip`> | zcorpan: I currently like the idea of having people download the font files and copy them onto their own web server, which should be as easy as possible and shouldn't involve setting up redirects or crazy filenames |
| 12:56 | <annevk> | ah yeah, the text-decoration effect only works in Firefox, guess no browser gets it right then :D |
| 12:56 | <hsivonen> | in my pending redesign, I'm using CSS generated content with a PUA character for <hr>s. Is that theoretically pure enough or are PUA chars always theoretically wrong? |
| 12:57 | <annevk> | seems to me that stuff inside CSS shouldn't matter |
| 12:57 | <hsivonen> | the result is OK without CSS or with CSS when @font-face is supported |
| 12:57 | <hsivonen> | but it doesn't with CSS without @font-face |
| 12:58 | <annevk> | I gave up on making that combination work |
| 12:58 | <annevk> | quite fast |
| 12:58 | <annevk> | my criteria was that it had to be usable, not pretty |
| 13:02 | <annevk> | it's a CSS problem, just as with different fonts, you want to apply a different set of CSS rules when 'content' fails to apply, but you can't |
| 13:07 | <zcorpan> | seems webkit doesn't apply the font for daddy.svg when used in 'content' |
| 13:08 | <zcorpan> | the 'find' button is also misplaced for some reason |
| 13:09 | <annevk> | simonw once had this CSS series called "CSS ain't Rocket Science" |
| 13:10 | Philip` | sees CORE-17018 already exists about format("opentype") in Opera |
| 13:10 | <hsivonen> | annevk: you should also use some rounded corners :-) |
| 13:11 | <Philip`> | annevk: You should write your entire page upside-down, and then use CSS Transformations to turn it round again |
| 13:14 | <annevk> | in half a year or so I'll add some transforms and transitions |
| 13:14 | <annevk> | to increase the menu buttons for instance |
| 13:14 | <annevk> | hsivonen, they are passe :p |
| 13:15 | <hsivonen> | annevk: passé or not, you could use some dotted rounded corners. they don't work right in any of the top 4 browsers |
| 13:15 | <hsivonen> | double works in Gecko but sucks in WebKit |
| 13:16 | <annevk> | under the assumption layout developers want my blog to render correctly? :) |
| 13:17 | <hsivonen> | of course |
| 13:18 | <zcorpan> | hsivonen: if you go too far ahead then they'll ignore the whole thing :) |
| 13:26 | <Lachy> | I don't understand this font bug. The fonts work on http://fonts.philip.html5.org/ but not when I download them and load them from localhost |
| 13:27 | <annevk> | do fonts work from localhost at all? |
| 13:29 | <Lachy> | They should. I'm running Apache, not just using file:/// |
| 13:30 | <annevk> | k |
| 13:41 | <Lachy> | it seems to be either falling back to some sans-serif font that looks a lot like Helvetica, or it is using Helvetica with a narrower letter-spacing |
| 13:55 | <Philip`> | Lachy: Try checking Apache's access_log to see if the fonts are actually being downloaded? |
| 13:56 | <Lachy> | ok, I'll have to find out where they're stored |
| 13:56 | <Philip`> | Lachy: Also, are these the fonts which are used on the index page there, or the fonts that are generated when you click the button? |
| 13:57 | <Philip`> | Lachy: If it's Linuxish then it's probably /var/log/apache/access_log |
| 13:57 | <Philip`> | s/apache/apache2/ |
| 13:57 | <Lachy> | I downloaded one of the fonts you're using on the page |
| 13:58 | <Lachy> | but my TC is using Anne's font though |
| 15:44 | <Philip`> | Lachy: Okay - I was just thinking you might need to be careful when downloading the fonts used on the index page, since they're gzipped regardless of whether your UA sends Accept-Encoding |
| 15:45 | <Philip`> | (I should probably set up mod_gzip properly instead) |
| 15:45 | <Lachy> | Philip`, I used wget to download it. I assume it would have unzipped it for me |
| 15:48 | <Philip`> | $ wget http://fonts.philip.html5.org/indexfonts/3a3846bc220dd7f0aadb8b12d839e6f4.ttf |
| 15:48 | <Philip`> | $ file 3a3846bc220dd7f0aadb8b12d839e6f4.ttf |
| 15:48 | <Philip`> | 3a3846bc220dd7f0aadb8b12d839e6f4.ttf: gzip compressed data |
| 15:48 | <Philip`> | $ gzip -cd 3a3846bc220dd7f0aadb8b12d839e6f4.ttf|file - |
| 15:48 | <Philip`> | /dev/stdin: TrueType font data |
| 15:48 | <Philip`> | So, wget doesn't unzip it for you |
| 15:49 | <Philip`> | Those filenames are a bit ugly, really |
| 15:56 | <Lachy> | why do you use such ugly file names? |
| 16:01 | <Philip`> | Lachy: I needed something unique, so I just used an MD5 of the font name and the included characters |
| 16:02 | <Philip`> | Lachy: and it would be a bad idea to use the original font's filename, because then the subsets would get confused with each other and with the original |
| 16:19 | <hsivonen> | Philip`, Lachy: it seems gzip works as a copying deterrent after all :-) |
| 16:20 | <Philip`> | hsivonen: But it only deters competent users who know about wget, not normal users who would paste the URL into their browser, so it's not a hugely effective deterrent :-p |
| 16:21 | <Philip`> | ...at least when it's just HTTP gzip compressed transmission |
| 16:21 | <Philip`> | If the actual files were distributed as compressed data, over an uncompressed HTTP transmission, then it would indeed be more effective :-) |
| 16:32 | <Lachy> | Philip`, it works in WebKit when I unzip the file. |
| 16:35 | <Lachy> | That test partially works in Opera too, except only some of the letters rendered using that font. |
| 16:37 | <Lachy> | oh, Opera has trouble rendering strings comprising all 26 letters in the right font, though it works better if I put in a few spaces |
| 16:39 | <Lachy> | ah, I see. once Opera hits a character not included in the web font, it won't revert back to that font for subsequent letters until after a space |
| 16:42 | Philip` | hopes the sensible thing to do with Apple Advanced Typographic tables in fonts is simply to delete them, as an attempt to promote cross-platformness |
| 16:42 | <Lachy> | Philip`, are the font files you're serving from that page completely valid, or are they likely to contain errors? |
| 16:42 | <Lachy> | I mean the ones you're using, not the copies the generator will spit out |
| 16:43 | <Philip`> | (and keep the OpenType tables which allow similar functionality, and are supported on Windows and Linux and apparently at least partly on OS X, so hopefully the world will converge on that) |
| 16:43 | <Philip`> | Lachy: The ones on the index page are spat out by the generator too |
| 16:43 | <Philip`> | Lachy: so they're likely to have similar bugs |
| 16:43 | <Lachy> | ok. Is there a font validator somewhere? |
| 16:44 | <Philip`> | Use the font and write some text, and if it looks okay then it's valid enough :-) |
| 16:44 | <Philip`> | I'm not aware of any tools that do any kind of comprehensive checking |
| 16:45 | <Lachy> | ok. Perhaps someone (you!) should develop one, so we can help reduce the occurrence of erroneous fonts occuring on the web once webfonts take off |
| 16:45 | <Philip`> | but I'm pretty sure the subsetted fonts I'm generating are buggy |
| 16:46 | <Lachy> | which tool are you using to generate them? |
| 16:46 | <Philip`> | It doesn't seem so useful to have a validator for fonts since they're all generated by software, so there won't be millions of people introducing millions of syntax errors |
| 16:47 | <Philip`> | I'm using the Font::TTF Perl module, plus a load of custom code that strips out lots of glyphs and then tries to update all the internal references to be consistent |
| 16:47 | <Lachy> | having validators will still allow people to check that the fonts their tools are generating are valid and will help the developers of those tools find and fix bugs |
| 16:48 | <gsnedders> | Lachy: Assuming the validator works correctly |
| 16:48 | <Lachy> | and it will also help browser vendors diagnose bugs |
| 16:48 | <Lachy> | Validators should exist for image and video formats too. |
| 16:49 | <Lachy> | (I did find one for MP4 once, but it cost thousands of dollars and was aimed at the pro market) |
| 16:51 | <jgraham> | gsnedders: BTW Black Box Recorder (music) |
| 16:51 | <gsnedders> | jgraham: What? |
| 16:51 | <jgraham> | Bands you should lsten to. Black Box Recorder |
| 16:51 | <gsnedders> | ah |
| 16:52 | <jgraham> | gsnedders: http://se.youtube.com/watch?v=FP-2VLQEv4c |
| 16:53 | <zcorpan> | http://browsershots.org/http://annevankesteren.nl/ |
| 16:56 | <Philip`> | http://www.adobe.com/devnet/opentype/afdko/ includes TTX, which converts fonts to an XML format, which can be useful for debugging |
| 16:58 | Philip` | is attempting to more comprehensively look through all the interesting OpenType tables, to work out which ones he really needs to process and which can just be ignored or dropped |
| 16:58 | <Philip`> | and then I should be more confident that I'm producing correct output |
| 16:58 | <Philip`> | (The main problem is forgetting to update all the references to glyphs that have been removed) |
| 17:00 | <gsnedders> | Philip`: n00b |
| 17:03 | <Philip`> | gsnedders: If you want to read http://www.microsoft.com/typography/otspec/gsub.htm and let me know exactly how to keep everything consistent when some glyphs are removed, please feel free :-) |
| 17:04 | <gsnedders> | Nah |
| 17:09 | <gsnedders> | Oh shit. |
| 17:10 | <gsnedders> | I said I'd do one thing for Hixie by today. |
| 17:11 | <Philip`> | One thing in particular, or just any thing? |
| 17:12 | jgraham | starts humming 'I'd do anything' or whatever that song from 'Oliver' is called |
| 17:12 | <gsnedders> | Philip`: Anolis template |
| 19:25 | <Hixie> | gsnedders: i think i have an idea for how to do cross-spec references btw |
| 19:25 | <takkaria> | any opera people around? |
| 19:25 | <Hixie> | without having to load both specs |
| 19:25 | <gsnedders> | Hixie: How? |
| 19:26 | <gsnedders> | Hixie: and: email. |
| 19:26 | <Hixie> | just have a declaration mechanism that "imports" some names |
| 19:52 | <Hixie> | Lachy: yt? |
| 19:52 | <Hixie> | annevk: yt? |
| 19:56 | <annevk> | am now |
| 20:05 | <takkaria> | annevk: do you know who deals with the applications for jobs at opera? |
| 20:05 | <annevk> | http://lists.w3.org/Archives/Public/public-xhtml2/2009Jan/0059.html I hope no market leader will ever attempt to natively support XHTML2; that'll become a huge mess to sort out |
| 20:06 | <annevk> | takkaria, HR department |
| 20:08 | <annevk> | takkaria, they'll pass it along to the appropriate people who will then get back to you (I think it works like that more or less) |
| 20:10 | <takkaria> | right, ta |
| 20:20 | gsnedders | has one slight issue wrt applying to Opera |
| 20:20 | <gsnedders> | I don't know if I'm going to take a gap year or not; if I don't I could get a summer internship, if I do I could try and get a job for nearer a year |
| 20:21 | <annevk> | you can apply for a summer internship and if you like it and we like you stay for a year |
| 20:21 | <dglazkov> | gsnedders: apply to Google :) |
| 20:21 | <annevk> | that sentence requires another you and a comma, but you get the idea |
| 20:22 | <gsnedders> | annevk: If I take a gap year, I really need to be around in the UK running off to places all the time in September, which makes it rather not sensible to start before Oct. |
| 20:23 | <gsnedders> | dglazkov: And quite how low are my chances at getting a job without a degree? :) |
| 20:23 | <annevk> | gsnedders, planes exist for a reason |
| 20:23 | <dglazkov> | gsnedders: a degree of what? ;) |
| 20:24 | <gsnedders> | annevk: Yeah, but taking, say, four weeks off might not make me popular :) |
| 20:24 | <gsnedders> | dglazkov: Oh, I dunno. A university one? :) |
| 20:24 | <Lachy> | Hixie, yo |
| 20:24 | <annevk> | gsnedders, it doesn't seem like a huge deal to me |
| 20:25 | <annevk> | gsnedders, finished your internship, go home, and then come back again later to work on something else... |
| 20:25 | <dglazkov> | universities are just deprecated facilities for teaching young people about procrastination and the value of borrowing someone else's work :) |
| 20:25 | <gsnedders> | annevk: Also, I'm not really meant to apply for the internship until I'm enrolled in a uni course :P |
| 20:25 | <hsivonen> | hmm. the deadline for comments on CSS3 Web Fonts is 2002-08-30 |
| 20:26 | <gsnedders> | dglazkov: But pretty much everything in this industry requires a degree :( |
| 20:26 | <gsnedders> | hsivonen: Think you can make that, then? |
| 20:26 | <dglazkov> | gsnedders: :( |
| 20:27 | <Philip`> | hsivonen: Perhaps you want http://dev.w3.org/csswg/css3-fonts/ instead? :-) |
| 20:27 | <annevk> | hsivonen, it's being moved back to WD |
| 20:27 | <annevk> | hsivonen, and you want the URL Philip` points out |
| 20:27 | <hsivonen> | thanks |
| 20:28 | <gsnedders> | annevk: Also, if I take a gap year, it'd be nice to have a couple of months at the start to try and do all these damned things I keep saying I'll do |
| 20:34 | <gsnedders> | (If anyone wants to hire me for Oct–Aug/Sep, let me know :P) |
| 20:34 | <annevk> | gsnedders, so start later, or convince someone at Opera to pay for it :) |
| 20:36 | <gsnedders> | annevk: A fair amount of the things it is almost certain that Opera wouldn't :) |
| 20:37 | <Hixie> | ok time to get ready. bbl. |
| 20:38 | <annevk> | gsnedders, it almost seems like you don't want to apply |
| 20:39 | <Philip`> | gsnedders: I'll hire you, as long as you don't expect any financial compensation for your time |
| 20:39 | <gsnedders> | annevk: I'm indecisive :P |
| 23:13 | Philip` | discovers that Opera doesn't like changing styles (e.g. colour) in the middle of a ligature |
| 23:14 | <Philip`> | (whereas Firefox handles it pretty nicely) |
| 23:27 | <Philip`> | (Hmm... Opera/Safari never do Latin ligatures, but do do Arabic ligatures (probably not what they're called but the same idea) that get broken when you change style in the middle; IE and Firefox do both Latin and Arabic ligatures, but IE breaks Latin ligatures when you change style) |
| 23:27 | <Philip`> | (So it's not entirely consistent :-( ) |
| 23:35 | <weinig> | Hixie: is it defined currently whether an onload handler for a frame needs to wait for all subresources to load before firing? |
| 23:35 | <Hixie> | yes |
| 23:35 | <Hixie> | search for "delay the load event" |
| 23:35 | <weinig> | thanks |
| 23:35 | <Hixie> | the spec isn't very thorough yet though, if you spot anything missing let me know |
| 23:36 | <weinig> | Hixie: I am thinking about external references to SVGFonts |
| 23:36 | <weinig> | Hixie: so that is probably not covered |
| 23:37 | <weinig> | Hixie: but is required by Acid 3 |
| 23:37 | <Hixie> | external from what, css? |
| 23:37 | <weinig> | Hixie: no, other svg |
| 23:37 | <weinig> | <font-face-uri xlink:href="font.svg#mini"/></font-face-src> |
| 23:37 | <weinig> | type things |
| 23:37 | <Hixie> | oh then ask the svgwg |
| 23:38 | <Hixie> | there's a hook in html5 if they want to define it |
| 23:40 | <roc> | Philip`: glad someone noticed, an awful lot of pain went into that. My pain. |
| 23:40 | <roc> | the Arabic forms are correctly called ligatures, BTW |
| 23:41 | <Hixie> | i've been tempted to use Zapfino's "Zapfino" ligature in Acid4 |
| 23:44 | <Hixie> | huh, firefox isn't rendering Zapfino's Zapfino ligature for me |
| 23:44 | <Hixie> | it does the "pf" ligature inside "Zapfino" |
| 23:44 | <Hixie> | safari doesn't even do that |
| 23:44 | <heycam> | weinig, so that'd be: <iframe src=something.svg>, and in something.svg you have that reference to an SVG font resource in a different file, and you'd like to know whether that impacts the load event dispatched to the iframe? |
| 23:44 | <Hixie> | and opera does both |
| 23:45 | <weinig> | heycam: exactly |
| 23:45 | <Hixie> | Philip`: how do you mean, it doesn't handle colour changes? |
| 23:45 | <Philip`> | Hixie: Seems kind of difficult to rely on Zapfino when most computers don't have that font and it's presumably not freely redistributable |
| 23:45 | <weinig> | heycam: ala Acid3 |
| 23:45 | <roc> | Hixie: the "Zapfino" ligature is a "discretionary" ligature |
| 23:45 | <Hixie> | roc: aah |
| 23:45 | <roc> | we disabled discretionary ligatures because in many situations authors don't want them |
| 23:45 | <Hixie> | fair enough |
| 23:46 | <Hixie> | wow, you do handle the colour change in a ligature well |
| 23:46 | <roc> | we need a CSS extension to provide this control to authors ... one of our guys has it on his to-do list |
| 23:46 | <heycam> | weinig, ok. we don't say anything on the matter currently. how does it work normally with HTML in an iframe? does the load on the iframe happen as a result of the load dispatched to the html in the frame? |
| 23:46 | <heycam> | weinig_, ok. we don't say anything on the matter currently. how does it work normally with HTML in an iframe? does the load on the iframe happen as a result of the load dispatched to the html in the frame? |
| 23:47 | <Hixie> | Philip`: i was considering asking apple to license a tiny subset of it for ahem purposes. but i doubt i will go down that road in acid4 anyway. |
| 23:47 | <roc> | Philip`: yeah, but we could just do something like a Hixifino font with a Hixifino ligature |
| 23:47 | <Hixie> | right |
| 23:47 | <Hixie> | if we want to test this at all |
| 23:47 | <Philip`> | roc: If I was really picky, I could complain that e.g. "f<font color=red>f</font>i" in Linux Libertine doesn't work perfectly, since the redness is shifted a bit too far left and covers part of the first 'f', but at least it's nicer than deligaturising them entirely :-) |
| 23:47 | <Hixie> | which isn't clear given the state of the relevant specs |
| 23:48 | <roc> | ligatures don't need a spec IMHO, at least for "required ligatures" |
| 23:48 | <Philip`> | Sounds like you're wanting http://www.webfonts.info/wiki/forum/viewtopic.php?f=5&t=7 |
| 23:48 | <roc> | Philip`: there's just no way to do it perfectly |
| 23:48 | <roc> | the fonts don't have enough info |
| 23:49 | <Hixie> | roc: well, i mean there's nothing in CSS that says how to colour one or the other part of a ligature |
| 23:49 | <Hixie> | roc: i agree that TTF+CSS is enough to require that ligatures be shown at all |
| 23:49 | <roc> | yeah |
| 23:49 | <roc> | but you could test <span>f</span><span>i</span> |
| 23:49 | <weinig_> | heycam: the onload happens when the main resource for the iframe is done loading and all subresources defined to delay the onload have also finished |
| 23:49 | <roc> | and see if that creates a ligature |
| 23:49 | <Hixie> | roc: right, if there are any browsers that fail thatbut pass fi (are there? i assume there won't be by acid4) |
| 23:50 | <Philip`> | roc: It looks like OpenType has the features for that (in GDEF's "ligature caret positioning information"), but I haven't seen any fonts that provide that data (though I've only looked at a handful of fonts) |
| 23:50 | <roc> | Hixie: I don't know ... getting from "fi" working to "<span>f</span>i" working is a ton of work |
| 23:50 | <Philip`> | Oh, actually, Linux Libertine does appear to provide that data |
| 23:51 | <roc> | well, it depends on how the engine is implemented, but for most "obvious" implementations I imagine it's hard |
| 23:51 | <roc> | Philip`: it does? what table? |
| 23:52 | <heycam> | weinig_, ok so that's possibly later than the load event dispatched to the iframe's window object? |
| 23:52 | <Philip`> | roc: http://www.microsoft.com/typography/otspec/gdef.htm - "The LigatureCaretList table contains positioning data for ligature carets, which the text-processing client uses on screen to select and highlight the individual components of a ligature glyph." |
| 23:52 | <weinig_> | heycam: I don't think so |
| 23:52 | <heycam> | oh |
| 23:52 | <Hixie> | roc: both opera and mozilla do it, and safari doesn't do ligatures at all |
| 23:53 | <roc> | yay us I guess |
| 23:53 | <heycam> | weinig_, load dispatched to the <iframe> and load dispatched to the iframe content's window object are distinct, yes? |
| 23:53 | <roc> | but I assure you it was hard :-) |
| 23:54 | Philip` | notes that IE dynamically deligaturises ligatures when you attempt to select individual characters |
| 23:54 | <weinig_> | heycam: I am not sure, but I didn't think so |
| 23:54 | <heycam> | weinig_, ok well i don't have a good understanding of html-ish things like this, so i'm probably wrong |
| 23:54 | <Philip`> | ...or even when you simply click on the ligature and don't move the mouse |
| 23:54 | <roc> | Philip`: Libertine has that eh? Cool ... unfortunately, however, platform APIs don't provide that data AFAIK so I'll have to wait until we have our own shaping code before we can use it |
| 23:55 | <roc> | Philip`: oh, so selection can change the layout? Urgh |
| 23:55 | <Hixie> | roc: i believe you :-) |
| 23:55 | <heycam> | weinig_, when you do <iframe onload=...> does that actually register a listener on the iframe content's window object then? |
| 23:56 | <Philip`> | roc: The layout of the rest of the line doesn't seem to change, it just renders the ligature as individual glyphs |
| 23:56 | heycam | finds this in the spec: "When content loads in an iframe, after any load events are fired within the content itself, the user agent must fire a load event at the iframe element." |
| 23:56 | <roc> | ick |
| 23:56 | heycam | wonders then if the load dispatched to the iframe content's window object is considered to be "within the content itself" |
| 23:56 | <Philip`> | Hmm, also it seems to have broken spacing after ligatures, like it's using the spacing for the non-ligature glyphs, though that might be because my font subsetter is buggy |
| 23:59 | <Hixie> | heycam: that text is horrible, i should fix that to be well-defined |