Options:
- # Session Start: Wed Jun 20 00:00:00 2007
- # Session Ident: #whatwg
- # [00:01] <Philip`> It's annoyingly hard to concentrate when there's two simultaneous firework displays outside
- # [00:05] * Quits: kingryan_ (n=kingryan@corp.technorati.com)
- # [00:08] * Joins: kingryan (n=kingryan@corp.technorati.com)
- # [00:08] * Joins: weinigLap_ (n=weinig@17.255.105.160)
- # [00:09] * Quits: kingryan (n=kingryan@corp.technorati.com) (Client Quit)
- # [00:11] * othermaciej is now known as om_coffee
- # [00:16] <Hixie> wow
- # [00:16] <Hixie> Opera actually supports <![CDATA[ ]]> in text/html
- # [00:16] <Hixie> it creates an actual #cdata-section
- # [00:16] <Hixie> i'm glad i added support for #cdata-sections to the live DOM viewer now
- # [00:16] <Hixie> i really didn't think that code would ever get hit
- # [00:18] * Quits: aroben (n=adamrobe@17.255.98.199) (Remote closed the connection)
- # [00:18] * Joins: aroben (n=adamrobe@17.255.98.199)
- # [00:18] * Quits: hasather (n=hasather@22.80-203-71.nextgentel.com) (Read error: 113 (No route to host))
- # [00:21] * Joins: aroben_ (n=adamrobe@17.203.15.248)
- # [00:23] * Quits: weinigLap (i=weinig@nat/apple/x-54452f298e41532f) (Read error: 110 (Connection timed out))
- # [00:24] <Philip`> Hixie: It seems to be implemented pretty weirdly - it dislikes having either [ or ] inside the CDATA section, which doesn't make much sense to me...
- # [00:25] <Philip`> Oh, actually it just dislikes it when the number of [ is not equal to the number of ]
- # [00:31] <jgraham> Philip`: Where are you with all the fireworks?
- # [00:31] <Philip`> http://software.hixie.ch/utilities/js/live-dom-viewer/?%3C%21%5BCDATA%5B%20%5B%5B%5D%5D%3E%20%5D%5D%3E - ah, it looks very much like it has a count of how deeply nested it is, and if sees a > after the nesting level has got back to 0 then it exits CDATA mode
- # [00:32] <Philip`> http://software.hixie.ch/utilities/js/live-dom-viewer/?%3C%21%5BCDATA%5B%5Dxyzw%5Dabcd%3E - and once it's seen the > at nesting-level 0, it deletes the last two characters (regardless of what they were)
- # [00:34] <Philip`> ...which all seems like a totally bogus thing to do
- # [00:35] <Hixie> it drops everything between the last ] and the > as far as i can tell
- # [00:35] <Hixie> oh no
- # [00:35] <Hixie> you're right
- # [00:37] <Hixie> has to be exactly the string <![CDATA[, too
- # [00:37] <Hixie> that's so funny
- # [00:37] <Hixie> i wonder how this can be abused
- # [00:40] * Quits: aroben (n=adamrobe@17.255.98.199) (Connection timed out)
- # [00:41] <Philip`> Looks like it parses exactly the same (requiring nested brackets and everything) if it just has <![ but only creates the cdata-section if it's followed by cdata[
- # [00:41] <Hixie> huh
- # [00:41] <Hixie> weirder and weirder
- # [00:43] <Philip`> Oh, no, it does it you have <!] too (then the nesting level starts at -1 so you have to do <!][> to get out of it)
- # [00:44] <Philip`> +if
- # [00:44] <Hixie> lol
- # [00:44] <Hixie> nic8e
- # [00:44] <Hixie> nice
- # [00:44] <Hixie> how about <!--, does that still have the counting?
- # [00:48] * Joins: gavins (n=gavin@firefox/developer/gavin)
- # [00:54] <Philip`> jgraham: In Cambridge (where it looks like most of the people are quite happy to have stopped working for the next few months :-) )
- # [00:55] <jgraham> Snap :)
- # [00:55] <Philip`> Hixie: I can't see Opera doing anything other than waiting until it sees --> after it's got <!--
- # [00:56] <Philip`> though it does do the []-counting if you just have <!- followed by anything except -
- # [00:56] * Quits: weinigLap_ (n=weinig@17.255.105.160)
- # [00:57] * Joins: weinigLap (n=weinig@17.255.105.160)
- # [00:59] <Philip`> jgraham: Are you somewhere near the centre of Cambridge?
- # [01:00] <jgraham> Yeah
- # [01:00] <Hixie> Philip`: interesting
- # [01:01] * Philip` was perfectly located to see the fireworks as long as he opened his window quite wide and let all the rain in
- # [01:02] * Joins: aroben (n=adamrobe@17.255.98.199)
- # [01:02] <jgraham> My view is usually blocked so I didn't try very hard
- # [01:02] * Quits: weinigLap (n=weinig@17.255.105.160)
- # [01:04] * Quits: aroben (n=adamrobe@17.255.98.199) (Remote closed the connection)
- # [01:05] * om_coffee is now known as othermaciej
- # [01:05] * Joins: aroben (n=adamrobe@17.255.98.199)
- # [01:05] * Joins: kingryan (n=kingryan@corp.technorati.com)
- # [01:05] * othermaciej is now known as oothermaciej
- # [01:06] <Hixie> only 122 more e-mails in my html-parsing-rules folder
- # [01:06] <Hixie> (not counting the -encoding subfolder, etc)
- # [01:06] * oothermaciej is now known as othermaciej
- # [01:06] <bewest> oo othat reminds me to send some feedback from a coworker
- # [01:12] <Philip`> http://lachy.id.au/log/2005/05/script-comments says "the only user agent I know of the supports the CDATA section for HTML documents is the new Opera 8", so it sounds like it wasn't added before v8. (I have no idea why they ever added it, particularly with such an intriguing implementation...)
- # [01:12] <Hixie> yeah
- # [01:12] <Hixie> well
- # [01:12] <Hixie> no comment
- # [01:13] <Hixie> i love how zcorpan reported the same issue several times (probably without realising it)
- # [01:17] * Quits: aroben_ (n=adamrobe@17.203.15.248) (Connection timed out)
- # [01:18] * Joins: webben (n=benh@91.84.143.253)
- # [01:20] * Quits: billmason (n=billmaso@ip156.unival.com) (Read error: 104 (Connection reset by peer))
- # [01:40] * Quits: aroben (n=adamrobe@17.255.98.199)
- # [01:50] * Quits: jgraham (n=jgraham@81-86-214-247.dsl.pipex.com) (Read error: 110 (Connection timed out))
- # [01:50] * Joins: jgraham (n=jgraham@81-86-214-247.dsl.pipex.com)
- # [02:04] * Joins: karlUshi (n=karl@dhcp-247-173.mag.keio.ac.jp)
- # [02:08] <Hixie> ok i'm sure what i just did just about broke everything in the spec
- # [02:08] <Hixie> so, please let me know if you find issues with those checkins...
- # [02:10] * Quits: webben (n=benh@91.84.143.253) (Read error: 110 (Connection timed out))
- # [02:11] <jruderman> Hixie: did you just set the spec on fire?
- # [02:12] <Hixie> i abstracted out innerHTML's getter and setter to generic algorithms
- # [02:13] * Joins: aroben (n=adamrobe@17.255.98.199)
- # [02:20] <Philip`> Looks like the innerHTML link in item 3 a bit below http://www.whatwg.org/specs/web-apps/current-work/#innerhtml1 should link to innerhtml1 (to be consistent with all the others in that section) instead of innerhtml0. Or maybe all those should link to innerhtml0 instead, or something.
- # [02:21] <Hixie> oops
- # [02:22] <Hixie> will dix
- # [02:22] <Hixie> f6ix
- # [02:22] <Hixie> fix
- # [02:41] <Philip`> Ooh, excellent, I get non-deterministic behaviour when drawing a couple of arcs and rectangles in Opera
- # [02:43] <Hixie> uri?
- # [02:44] <Philip`> Just trying to make a sensible test case now
- # [02:50] * Hixie giggles
- # [02:50] <Hixie> one of my colleagues introduced me to one of our interns, saying i was a standards guru
- # [02:50] <Hixie> the intern asked if i knew about the whatwg
- # [02:51] <bewest> hehe
- # [02:51] <bewest> do you pronounce whatwg?
- # [02:51] <bewest> or do you say W-H-A....
- # [02:52] <Hixie> i pronounce it "whatwuhjee"
- # [02:52] <Hixie> and i guess that's canonical since i came up with it
- # [02:52] <Hixie> when i'm talking more formally i call it the "What double you gee"
- # [02:53] <Philip`> http://canvex.lazyilluminati.com/misc/operanondet.html - that's running the same code lots of times, and I get a random selection of about four renderings (of which two are quite rare)
- # [02:53] <bewest> I usually say whatwahguhdfm.....
- # [02:53] <Philip`> ...in Opera 9.21 on Windows and Linux
- # [02:53] <Philip`> (Turns out it doesn't actually need arcs at all)
- # [02:54] <Hixie> all look the same to me on 9.00
- # [02:54] <Hixie> (windows)
- # [02:54] <Hixie> bewest: whatwahguhdfm?
- # [02:54] <Philip`> Does it stay the same if you reload the page a few times?
- # [02:54] <Hixie> (wish it was easier to keep up to date with opera, sheesh)
- # [02:54] <Hixie> seems yes
- # [02:55] <bewest> Hixie: yes, and then my voice kind of trails off at the end, and then I resume what I was saying.
- # [02:55] <Hixie> heh
- # [02:56] <Hixie> i recommend "whatwuhjee"
- # [02:56] <bewest> yeah, seems better.
- # [02:56] <Hixie> Philip`: wow, yeah, opera 9.21 is all over the place
- # [02:59] <Philip`> http://canvex.lazyilluminati.com/misc/operanondet.png - that has all the four renderings I've noticed
- # [03:07] <Hixie> funky
- # [03:09] <Hixie> ok, renamed "innerHTML case" to "fragment case"
- # [03:10] <Hixie> wow, the last csswg meeting had all of four people on the call
- # [03:26] * Joins: csarven (n=nevrasc@modemcable081.152-201-24.mc.videotron.ca)
- # [03:31] * Quits: kingryan (n=kingryan@corp.technorati.com)
- # [03:37] * Quits: h3h (n=w3rd@66-162-32-234.static.twtelecom.net) ("|")
- # [03:37] * Joins: Lachy (n=Lachlan@203-158-59-119.dyn.iinet.net.au)
- # [03:43] <Hixie> http://bugs.webkit.org/show_bug.cgi?id=12740 is heartwarming
- # [03:43] <othermaciej> like heartburn?
- # [03:44] <Hixie> no
- # [03:44] <Hixie> like a hug :-P
- # [03:45] <othermaciej> ah yes, that was a nice fix
- # [03:45] <othermaciej> interop problem solved by following spec
- # [03:48] <karlUshi> othermaciej: which part of the spec?
- # [03:48] <othermaciej> Hixie: part of the HTML5 parsing algorithm
- # [03:48] <Hixie> i assume that was to karl
- # [03:48] <karlUshi> ;)
- # [03:48] <Hixie> since i looked at the bug and therefore knew :-)
- # [03:49] <othermaciej> er, yeah
- # [03:49] <othermaciej> karlUshi: meant that for you
- # [03:49] <karlUshi> a specific part of the parsing algorithm
- # [03:50] <karlUshi> I have an idea to explain people why html5 parsing rules are important.
- # [03:50] <karlUshi> I think it is a good example
- # [03:50] * Joins: MikeSmith (n=MikeSmit@u-210160014218.hotspot.ne.jp)
- # [03:53] <karlUshi> http://dev.w3.org/cvsweb/~checkout~/html5/spec/Overview.html#in-table
- # [03:54] <karlUshi> it seems to be it
- # [03:59] <Philip`> karlUshi: Looks like the "A start tag whose tag name is "table"" case in there, in particular
- # [04:36] * Joins: jcgregorio (n=chatzill@adsl-072-148-043-048.sip.rmo.bellsouth.net)
- # [04:38] <Lachy> Hixie, yt?
- # [04:59] <Hixie> yo
- # [05:00] <Hixie> Lachy?
- # [05:04] <Lachy> hey
- # [05:04] <Lachy> regarding Selectors API, Jonas' last message on member-webapi and http://lists.w3.org/Archives/Public/public-webapi/2006Sep/0100.html
- # [05:05] <Lachy> I'm wondering if you could help me understand what the issue is - there doesn't seem to be one
- # [05:05] <Hixie> which part?
- # [05:05] <Lachy> in particular, the scoped selectors part.
- # [05:06] <Lachy> AFAIK, scoped selectors don't exist, so how can I deal with them?
- # [05:06] <Hixie> i don't see the problem either
- # [05:08] <Lachy> also, regarding the :root issue, it seems to me that it would only ever match the root of the document, not the root of a subtree, so I don't see what the problem is there either
- # [05:08] <Hixie> i agree
- # [05:08] * Hixie wonders exactly what chaals meant in reply to the f2f questionnaire
- # [05:08] <Lachy> cool. I'll just reply and explain why it's not an issue.
- # [05:09] <Hixie> i can't tell if he thinks i'm wrong in saying the telecon was a waste of time or what
- # [05:09] <Hixie> guess i'll have to catch him online at some point
- # [05:09] <Lachy> which f2f questionaire?
- # [05:09] <Hixie> http://www.w3.org/2002/09/wbs/40318/mtgmv/
- # [05:10] <Hixie> given that only 13 people replied, and at least one of them only replied because i asked them about it, i'm starting to wonder if anyone actually reads public-html these days
- # [05:10] <Lachy> I haven't paid much attention to it recently. I marked about ~300 messages as read a few days ago cause I couldn't be bothered
- # [05:11] <Lachy> I didn't even know they were going to have an f2f
- # [05:11] <Hixie> heh
- # [05:12] * Quits: csarven (n=nevrasc@modemcable081.152-201-24.mc.videotron.ca)
- # [05:13] <Hixie> right, going home
- # [05:13] <Hixie> bbl
- # [05:13] <Lachy> ok, cya
- # [05:13] * Quits: tantek (n=tantek@corp.technorati.com)
- # [05:16] <Philip`> Hmm, commit-watchers seems to still be randomly ignoring some commits (823, 839, 898, 908, 912, 932, 934)
- # [05:17] * Quits: dbaron (n=dbaron@corp-242.mountainview.mozilla.com) ("8403864 bytes have been tenured, next gc will be global.")
- # [05:52] * Quits: MikeSmith (n=MikeSmit@u-210160014218.hotspot.ne.jp) (Read error: 110 (Connection timed out))
- # [05:54] * Quits: jruderman (n=jruderma@corp-242.mountainview.mozilla.com)
- # [06:07] * Quits: othermaciej (n=mjs@17.255.98.107)
- # [06:08] * Quits: gavin (n=gavin@firefox/developer/gavin) (Remote closed the connection)
- # [06:44] * Quits: jcgregorio (n=chatzill@adsl-072-148-043-048.sip.rmo.bellsouth.net) ("ChatZilla 0.9.78.1 [Firefox 2.0.0.4/2007060115]")
- # [07:02] * Joins: othermaciej (n=mjs@dsl081-048-145.sfo1.dsl.speakeasy.net)
- # [07:05] * Quits: othermaciej (n=mjs@dsl081-048-145.sfo1.dsl.speakeasy.net) (Read error: 104 (Connection reset by peer))
- # [07:06] * Joins: othermaciej (n=mjs@dsl081-048-145.sfo1.dsl.speakeasy.net)
- # [07:07] * Joins: MikeSmith (n=MikeSmit@u-61127102157.hotspot.ne.jp)
- # [07:47] * Joins: gavin_ (n=gavin@people.mozilla.com)
- # [07:50] * Joins: Lachy_ (n=Lachlan@203-158-59-119.dyn.iinet.net.au)
- # [07:50] * Quits: Lachy (n=Lachlan@203-158-59-119.dyn.iinet.net.au) (Read error: 104 (Connection reset by peer))
- # [07:55] <Hixie> Philip`: weird
- # [07:55] * othermaciej is now known as om_food
- # [07:59] <Lachy_> what do people think of selectOne/selectAll as the resolution to the selectors api naming debate? (I'm currently going through ~300 emails reviewing the arguments)
- # [08:05] * Joins: peepo (n=Jay@host81-159-189-97.range81-159.btcentralplus.com)
- # [08:06] * Joins: tantek (n=tantek@adsl-63-195-114-133.dsl.snfc21.pacbell.net)
- # [08:07] <Hixie> sounds good to me, but i think the reason anne didn't pick those is that they are either too similar or actually clash with the xpath functions that IE supports
- # [08:08] <Lachy_> yeah, I did the research on that. XPath uses selectSingleNode/selectNodes
- # [08:08] <Lachy_> .select() is out because it's already used in <textarea> and <input type=text> APIs
- # [08:09] <Lachy_> the other alternative I'm considering is choose*()
- # [08:10] <Hixie> i prefer select
- # [08:10] <Lachy_> me too
- # [08:10] * Joins: hsivonen_ (n=hsivonen@kekkonen.cs.hut.fi)
- # [08:10] * Hixie finds a page that renders differently in IE than in other browsers because <span> is not considered a formatting element
- # [08:10] <Lachy_> I still have about 150 emails to get through. Then I'll finish summarising the arguments and send the results to the list
- # [08:12] * Parts: hsivonen (n=hsivonen@vipunen.hut.fi)
- # [08:12] * hsivonen_ is now known as hsivonen
- # [08:14] <Hixie> and then you'll be told you're being biased, and will have to ignore about 30% of the people, who will raise formal objections... welcome to the editor's job :-)
- # [08:15] <Lachy_> yeah, why do you think I've been avoiding the issue for so long? :-)
- # [08:15] <Lachy_> at least the CSS WG resolved the case sesitivity issue for me earlier today :-)
- # [08:16] * Joins: jruderman (n=jruderma@c-67-169-24-116.hsd1.ca.comcast.net)
- # [08:19] <Hixie> yeah
- # [08:19] <Hixie> impressive
- # [08:20] <Lachy_> are you going to consider fixing the issue in XBL to make the prefixes case senstive now, or just leave it as is?
- # [08:20] <Hixie> i'll fix it in due course
- # [08:20] <Lachy_> cool
- # [08:27] <Hixie> annevk: yt?
- # [08:44] <Hixie> http://news.com.com/8301-10784_3-9731230-7.html?part=rss&subj=news&tag=2547-1_3-0-5
- # [08:44] <Hixie> seriously, they're getting worse
- # [08:44] <Hixie> when will they learn?
- # [08:44] <Lachy_> yeah, I noticed that earlier. I just laughed
- # [08:51] * Joins: zcorpan_ (n=zcorpan@pat.se.opera.com)
- # [08:55] * om_food is now known as othermaciej
- # [08:56] <Lachy_> oh dear! Flash CS3 apparently uses document.selectAll() already :-(
- # [08:56] <karlUshi> Hixie: you mean journalists… indeed :p Tempest in a tea post
- # [08:57] <karlUshi> slashdot is more interesting on the issue
- # [08:57] <othermaciej> Lachy_: for what?
- # [08:57] <othermaciej> what does it expect selectAll to do?
- # [08:58] <Lachy_> I'm getting the link...
- # [08:58] <Lachy_> http://livedocs.adobe.com/flash/9.0/main/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_Parts&file=00003989.html
- # [08:59] <Lachy_> it apparently seems to do text selection, though I'm not totally sure
- # [08:59] <othermaciej> so wait, Flash extends the Document object?
- # [08:59] * othermaciej is confused
- # [09:00] <othermaciej> "The Document object represents the Stage. That is, only FLA files are considered documents."
- # [09:00] <Lachy_> well, it calls it a DOM, but it doesn't seem to be related to the W3C DOM
- # [09:00] <othermaciej> none of that stuff is in any way related to the DOM as we know it, as far as I can tell
- # [09:01] <othermaciej> Lachy_: the article about the w3c is hilarious
- # [09:03] <zcorpan_> can anyone access http://forums.whatwg.org/ ?
- # [09:03] <Lachy_> zcorpan_, no
- # [09:04] * Joins: tantek_ (n=tantek@adsl-63-195-114-133.dsl.snfc21.pacbell.net)
- # [09:10] <zcorpan_> ok
- # [09:11] <Hixie> server is rebooting
- # [09:11] <MikeSmith> great to see that Declan McCullagh at it again
- # [09:12] * Quits: MikeSmith (n=MikeSmit@u-61127102157.hotspot.ne.jp) ("Less talk, more pimp walk.")
- # [09:21] * Quits: tantek (n=tantek@adsl-63-195-114-133.dsl.snfc21.pacbell.net) (Read error: 110 (Connection timed out))
- # [09:31] * Quits: karlUshi (n=karl@dhcp-247-173.mag.keio.ac.jp) ("Where dwelt Ymir, or wherein did he find sustenance?")
- # [09:43] <zcorpan_> does it matter whether something is implemented in the tokenizer or the parser?
- # [09:45] <hsivonen> zcorpan_: if you want to use tokenizer-specific unit tests, yes.
- # [09:45] <hsivonen> zcorpan_: matter for whom?
- # [09:46] <hsivonen> zcorpan_: also, in the case of Java (or C#, I presume), upper or lower casing stuff in the tokenizer is a bit cheaper than leaving it to the tree builder
- # [09:47] <hsivonen> (languages that have both char[] and immutable String)
- # [09:47] <hsivonen> scratch that--the statement makes assumptions about the interface between the tokenizer and the tree builder
- # [09:49] <zcorpan_> hsivonen: whether it matters for spec conformance
- # [09:50] <hsivonen> zcorpan_: it may matter to the order of parse errors
- # [09:50] <hsivonen> zcorpan_: I'd expect
- # [09:50] <othermaciej> does the spec require a particular order for parse errors?
- # [09:51] <hsivonen> othermaciej: IIRC, there was some language tied to "first"
- # [09:51] <zcorpan_> e.g., if something is more performant to implement in the parser for implementor A and more performant to implement in the tokenizer for implementor B, and the end result is the same, then i don't see a good reason to make one implementation non-conforming
- # [09:52] <hsivonen> zcorpan_: agreed
- # [09:53] <hsivonen> othermaciej: ah. not relevant. it was not the first as defined by the algorithm but the first for which the impl takes special action
- # [09:54] <hsivonen> "The error handling for parse errors is well-defined: user agents must either act as described below when encountering such problems, or must abort processing at the first error that they encounter for which they do not wish to apply the rules described below."
- # [09:55] <zcorpan_> could be phrased as s/the first/any/
- # [09:57] <hsivonen> fwiw, I'll probably make following that rule optional
- # [09:57] <hsivonen> (i.e. allow the user of the parser to enable non-conforming coercion to XML 1.0 infoset)
- # [09:58] <hsivonen> in the parser library that is--not in the conformance checker
- # [09:58] * Quits: tantek_ (n=tantek@adsl-63-195-114-133.dsl.snfc21.pacbell.net)
- # [10:00] * Joins: ddfreyne (n=ddfreyne@d54C57894.access.telenet.be)
- # [10:07] * Quits: peepo (n=Jay@host81-159-189-97.range81-159.btcentralplus.com) ("later")
- # [10:21] <hsivonen> hmm. the state transitions between the new comment states aren't nice
- # [10:21] * hsivonen wonders if one state with hyphen counting would work
- # [10:23] <zcorpan_> hmm, writing test cases for .lastModified seems non-trivial
- # [10:23] <zcorpan_> or not, i can use http headers
- # [10:26] <hsivonen> it seems to me that it is the easiest to combine the last three comment states and to use a counter
- # [10:29] <zcorpan_> "The last two digits of the year component of the date." -- shouldn't this be 4 digits?
- # [10:29] * Quits: ddfreyne (n=ddfreyne@unaffiliated/ddfreyne) ("kthxbai")
- # [10:34] <Hixie> hsivonen: the biggest problem with that is getting the parse errors right
- # [10:34] * Quits: syp| (n=syp@lasigpc9.epfl.ch) (Read error: 104 (Connection reset by peer))
- # [10:34] * Joins: syp| (n=syp@lasigpc9.epfl.ch)
- # [10:35] <hsivonen> Hixie: "that" being a counter?
- # [10:35] <Hixie> yeah
- # [10:35] <Hixie> well, with not using the numerous states i used
- # [10:36] <zcorpan_> Hixie: was the year component of .lastModified a mistake? should i bug the list about it? (all browsers return the year in 4 digits)
- # [10:36] <Hixie> why are the states troublesome? because of using a stack-based approach instead of a switch? or?
- # [10:37] <hsivonen> Hixie: using a stack-based approach and I don't want arbitrary recursion based on input
- # [10:37] * Quits: syp| (n=syp@lasigpc9.epfl.ch) (Read error: 104 (Connection reset by peer))
- # [10:37] <Hixie> zcorpan_: hm
- # [10:37] <hsivonen> Hixie: plus the direct transition to comment end state from comment start dash state
- # [10:38] <Hixie> ah
- # [10:38] <Hixie> just have a little state machine in your function :-)
- # [10:38] <hsivonen> Hixie: isn't the counter exactly it?
- # [10:39] <hsivonen> 0: comment 1: end dash 2: end
- # [10:39] <Hixie> well, if you get the parse errors right
- # [10:39] * Joins: syp| (n=syp@lasigpc9.epfl.ch)
- # [10:39] <Hixie> <!--> has a parse error, <!----> does not
- # [10:39] <Hixie> <!---> has a parse error, <!-- ---> has a parse error
- # [10:40] <Hixie> <!-- --> does not
- # [10:41] <Hixie> zcorpan_: oops, i'll fix that
- # [10:41] <Hixie> zcorpan_: no need to report it
- # [10:41] <hsivonen> Hixie: um. according to the revision of comment start dash state that I am looking at, <!--> does not have a parse error
- # [10:41] <zcorpan_> Hixie: ok
- # [10:41] <hsivonen> oop
- # [10:41] <hsivonen> s
- # [10:42] <hsivonen> never mind
- # [10:42] <Hixie> you start in the comment start state, not the comment start dash state
- # [10:42] <hsivonen> Hixie: I wasn't going to use a counter for the comment start * states
- # [10:43] <Hixie> ah ok
- # [10:48] * othermaciej is now known as om_sleep
- # [10:49] * Quits: kfish (n=conrad@61.194.21.25) ("pike")
- # [10:51] <annevk> Hixie, I am here now
- # [10:51] <Hixie> sent you mail
- # [10:51] <annevk> having said that, I haven't checked e-mail so far
- # [10:51] <annevk> ok
- # [10:51] <hsivonen> Hixie: considering markup decl open state, how could you ever go through the comment start* states without hitting the '-' cases?
- # [10:52] <hsivonen> "If the next two characters are both U+002D HYPHEN-MINUS (-) characters, consume those two characters, create a comment token whose data is the empty string, and switch to the comment start state."
- # [10:52] <Hixie> they're consumed (by the text you just quoted) before you enter that state
- # [10:54] <hsivonen> ooh! the purpose of those states is very different from what I though
- # [10:54] <hsivonen> t
- # [10:55] <Hixie> oh
- # [10:55] <Hixie> heh :-)
- # [10:55] <hsivonen> calling them "start" is confusing
- # [10:56] <Hixie> why?
- # [10:56] <Hixie> they're at the start
- # [10:56] <hsivonen> when they actually test for bogus end
- # [10:56] <Hixie> what should i call them?
- # [10:56] <Hixie> i don't want to have the tokeniser enter a state with the name "bogus" for quite compliant markup
- # [10:56] <hsivonen> commentPotentiallyBogusDashOne commentPotentiallyBogusDashTwo
- # [10:58] <annevk> whoa
- # [10:58] <Hixie> i don't like names with "bogus" in them that are not bogus :-)
- # [10:58] <Hixie> "whoa"?
- # [10:59] <hsivonen> Hixie: only *potentially#
- # [10:59] <Hixie> oh i understand your proposal
- # [10:59] <Hixie> i just don't particularly like it :-)
- # [10:59] <Hixie> i understand how the current text is confusing though
- # [11:00] <hsivonen> annevk: what was your reading of the purpose of the new states?
- # [11:00] <annevk> whoa was in response to the new names
- # [11:00] <annevk> hsivonen, to address parse errors for <!--> and <!--->
- # [11:01] <hsivonen> annevk: yeah, but was your intuitive reading that <!--> would go through comment start dash?
- # [11:01] <hsivonen> annevk: am I the only one who is confused?
- # [11:01] <Hixie> i agree that the current state names are confusing
- # [11:01] <Hixie> and will look for better names
- # [11:01] <hsivonen> Hixie: ok thanks
- # [11:02] <Hixie> on another note, the w3c pubrules checker is retarded
- # [11:03] <annevk> hsivonen, how does <!--> go through comment start dash? it is emitted during comment start
- # [11:12] <hsivonen> annevk: it doesn't. that's my point
- # [11:13] <zcorpan_> Hixie: wow this is interesting. ie takes daylight-saving time into account for .lastModified. firefox doesn't.
- # [11:14] <annevk> hmm
- # [11:14] <annevk> I suppose I'm too used to everything after <!-- being the start of the comment
- # [11:14] <zcorpan_> http://simon.html5.org/test/html/dom/interfaces/HTMLDocument/lastModified/001.php
- # [11:15] <zcorpan_> in ie, it failed, but when i turned off "automatically adjust daylight-saving time" in windows, the test passed
- # [11:15] <hsivonen> on a related note: if an HTML5 doc contains <!--a--b-->, what would you like the result of XHTML5 conversion be? (assuming fatal error is not an option)
- # [11:15] <zcorpan_> in firefox it passed both times
- # [11:17] <hsivonen> is substituting two EN DASHes in the middle evil and/or confusing? what about a single U+FFFD?
- # [11:19] <annevk> I think the DOM spec suggested something like "--" -> "- -"
- # [11:19] <hsivonen> ok
- # [11:22] <annevk> Hixie, does Google have some secret project that relies on the placement of comments? :)
- # [11:22] <zcorpan_> "The presence of this character sequence must generate a fatal error during serialization." -- http://www.w3.org/TR/DOM-Level-3-Core/core.html#ID-1728279322
- # [11:23] <annevk> I stick with my suggestion
- # [11:23] <annevk> I believe browsers already support <base> in XHTML
- # [11:24] <hsivonen> zcorpan_: let's assume I'm going to have an infoset-altering option for everything that the specs say is fatal
- # [11:25] <zcorpan_> hsivonen: ok. that was the text i found when looking for what annevk referred to ("--" -> "- -")
- # [11:25] <zcorpan_> (that almost looked like a smiley)
- # [11:26] * Joins: maikmerten (n=maikmert@L9a93.l.pppool.de)
- # [11:27] * zcorpan_ will bug the list about daylight-saving time on .lastModified
- # [11:27] <hsivonen> the whattf CVS to SVN migration support thread has 14 messages and the transition still isn't done...
- # [11:27] <hsivonen> not counting my replies
- # [11:28] * Joins: KevinMarks (n=Snak@c-76-102-254-252.hsd1.ca.comcast.net)
- # [11:29] <Hixie> annevk: heh, no, i just want whitespace and comments to be in the DOM in the same place they are in the markup
- # [11:29] * Joins: BenWard (i=BenWard@nat/yahoo/x-14b34d0dafe9d0bb)
- # [11:30] <hsivonen> Hixie: that'll be another use of XmlViolationPolicy.ALTER_INFOSET, then
- # [11:31] <Hixie> which?
- # [11:31] <hsivonen> Hixie: appending stuff to </head>
- # [11:31] <hsivonen> to head
- # [11:31] <hsivonen> after </head> has been seen
- # [11:32] <hsivonen> or are there those cases still
- # [11:32] <hsivonen> perhaps I'm just way too confused this morning. I woke up too early
- # [11:33] <Hixie> heh
- # [11:34] <zcorpan_> is it possible to get daylight-saving time info from javascript?
- # [11:34] <hsivonen> annevk: is your remainin </head> suggestion only about white space and comments?
- # [11:37] <zcorpan_> iirc, firefox inserts whitespace and comments that appear before <head> in the HEAD, and after </body> in the BODY. and between </head> and <body> in HEAD.
- # [11:38] * Joins: Ducki (n=Alex@dialin-212-144-071-095.pools.arcor-ip.net)
- # [11:39] <annevk> If we ignore </head> there's no moving around of elements anymore
- # [11:39] <annevk> a lot less special processing
- # [11:39] <annevk> and in general a simpler parsing model
- # [11:40] <Hixie> the complexity involved here is miniscule compared to almost any other part of the spec
- # [11:43] <zcorpan_> http://software.hixie.ch/utilities/js/live-dom-viewer/?%3C%21--before-doctype--%3E%3C%21doctype%20html%3E%3C%21--before-html--%3E%3Chtml%3E%3C%21--before-head--%3E%3Chead%3E%3C/head%3E%3C%21--before-body--%3E%3Cbody%3E%3C/body%3E%3C%21--after-body--%3E%3C/html%3E%3C%21--after-html--%3E
- # [11:44] <annevk> after body and after html will always be part of body I believe
- # [11:44] <Hixie> not in html5
- # [11:45] <Hixie> i need to find a way to handle whitespace, too
- # [11:45] <Hixie> i can reuse whatever solution i find for <table> whitespace processing
- # [11:47] <hsivonen> there are way too many pointless edge case differences between html4, html5 and xml 1.0
- # [11:47] <hsivonen> I don't care about xml 1.1, which is itself pointless
- # [11:48] <hsivonen> unfortunately, the silliness is mostly due to XML banning arbitrary stuff
- # [11:48] <annevk> or html5 allowing arbitrary stuff
- # [11:49] <hsivonen> well, yeah
- # [11:49] <annevk> then again, html was there first
- # [11:49] <zcorpan_> the arbitrary stuff in xml was copied from sgml, wasn't it?
- # [11:50] <hsivonen> zcorpan_: U+FFFE and U+FFFF sure were not
- # [11:51] <zcorpan_> hsivonen: ok.
- # [11:51] * hsivonen wonders who is actually able to use U+FFFF as a sentinel
- # [11:54] <Lachy_> wow! I just finished reading through every email I have on the naming debate :-)
- # [11:54] <hsivonen> Lachy_: naming?
- # [11:54] <Lachy_> selectors api
- # [11:54] <hsivonen> Lachy_: onwards to XHTML5 then :-)
- # [11:54] <Lachy_> the debate between matchAll()/getElementBySelector() and dozens of other alternatives
- # [11:55] <zcorpan_> Lachy_: did you get any wiser? :)
- # [11:55] <Lachy_> I'm about to send the summary of my research to public-webapi
- # [11:56] <Lachy_> sadly, I had to give up on selectOne/selectAll idea :-(
- # [11:56] <Lachy_> I'm considering a few like the following...
- # [11:56] * Joins: ROBOd (n=robod@86.34.246.154)
- # [11:56] <Lachy_> selectElement/selectElementList
- # [11:56] * om_sleep is now known as othermaciej
- # [11:56] <Lachy_> getElement/getElementList
- # [11:57] <othermaciej> selectElement would be extremely confusing given selectSingleNode
- # [11:57] <othermaciej> I would sugget cssQuery / cssQueryAll or cssQueryOne / cssQuery
- # [11:57] <zcorpan_> Lachy_: was it pointed out that dean edwards' base2 uses matchAll() and matchSingle() to implement the spec?
- # [11:57] <othermaciej> short and unambiguous
- # [11:57] <Lachy_> yeah, that's the argument against all the select* alternatives
- # [11:57] <Lachy_> zcorpan_, yes, I'm aware
- # [11:58] <Hixie> nn all
- # [11:58] <Lachy_> cya hixie
- # [11:58] <zcorpan_> Hixie: nn
- # [11:58] <hsivonen> nn
- # [11:59] <othermaciej> I'm not a fan of the getElementBySelector name that was theoretically chosen by the group but never put in the spec
- # [11:59] <othermaciej> but I also think on further thought that get() / getAll() is a little *too* concise
- # [11:59] <annevk> the problem with that is chosing a name for the one that matches multiple
- # [12:00] <Lachy_> if we didn't need to have both methods, I'd just go for getElementsBySelector()
- # [12:00] <othermaciej> I hate how long it is
- # [12:00] <annevk> yeah, me too
- # [12:00] <Lachy_> I know, me too
- # [12:00] <othermaciej> cssQuery
- # [12:00] <othermaciej> short, unambiguous
- # [12:00] <annevk> matchAll and matchSingle is already implemented :)
- # [12:00] <Lachy_> I'm not a fan of having css in the name
- # [12:01] <othermaciej> css is inaccurate
- # [12:01] <annevk> are, even
- # [12:01] <othermaciej> but is also a very common name for the similar function in JS libraries
- # [12:01] <Lachy_> yeah, that's a good argument in favour of the match* methods
- # [12:01] <othermaciej> people call it a "css query api"
- # [12:01] <annevk> terrible
- # [12:02] <othermaciej> microsoft's implementation comments were weird
- # [12:02] * othermaciej is now known as om_sleep
- # [12:09] * Lachy_ mailed public-webapi with the list of alternatives and the summary of the arguments
- # [12:09] * Lachy_ is now known as Lachy
- # [12:14] <annevk> getElementByGroupOfSelectors() and getElementsByGroupOfSelectors() all the way
- # [12:17] <virtuelv> annevk: at this point there are so many suggestions, I suggest going with magic() and blackMagic() :-P
- # [12:33] <Dashiva> Wow, that's a lot of names
- # [12:34] <zcorpan_> foo()
- # [12:37] <annevk> sss() and aaa()
- # [12:37] * Quits: aroben (n=adamrobe@17.255.98.199)
- # [12:39] <BenWard> document.gifv()
- # [12:39] <Dashiva> dwiw?
- # [12:45] <virtuelv> document.gtfo()
- # [12:48] * Quits: Ducki (n=Alex@dialin-212-144-071-095.pools.arcor-ip.net) (Read error: 104 (Connection reset by peer))
- # [12:54] * Joins: MikeSmith (n=MikeSmit@u-210162009021.hotspot.ne.jp)
- # [13:00] <Lachy> what's gifv, dwiw and gtfo?
- # [13:00] <Dashiva> do what I want, get the f* out
- # [13:01] <Dashiva> But how about making two names? E.g. both getElementsBySelector and gEBS. Then everyone should be happy :)
- # [13:02] <Lachy> "I guess that's the nice thing about getElementsBySelector. It's like picking 6 names all at once. :)" -- http://lists.w3.org/Archives/Public/public-webapi/2006Dec/0049.html
- # [13:03] <Lachy> 6 > 2!
- # [13:07] <Philip`> Call them $$$ and $$$s
- # [13:08] <Lachy> I'll just let each UA implement whatever they like and let the market decide
- # [13:08] <Dashiva> I know
- # [13:08] <Dashiva> Make them use kanji
- # [13:08] <Dashiva> Then they can be short and detailed at the same time!
- # [13:09] <Lachy> I could go with ⺽⻤()
- # [13:10] <Lachy> (no idea what that means, I just picked 2 random chinese characters)
- # [13:11] <Dashiva> Seems they didn't make it past the encoding boundries either
- # [13:11] <Lachy> they were encoded as UTF-8
- # [13:11] <Dashiva> But that will just make it easier for authors to check they're using the right encoding!
- # [13:12] <annevk> yeah, someone should just implement match() and matchAll() and we're done :)
- # [13:13] <Dashiva> Can't we just have one method, matchBySelector and overload it?
- # [13:15] <annevk> hmm
- # [13:16] <Lachy> the reason for having the single method is that it's more efficient when you only want the first element.
- # [13:18] <Dashiva> Well, the JS match solves that by having a global flag on/off on the regexp.
- # [13:18] <Philip`> I guess it's not more efficient when you only want one element and you're selecting it by ID (which I guess might be the most common single-selection situation)
- # [13:18] <Lachy> the issue is that most use cases for wanting a single element are covered by gEBId or things like document.body
- # [13:19] <Lachy> match("#a, #b, #c") is an interesting use case when you want whichever comes first or whichever is present in the document
- # [13:19] <annevk> hopefully this method name is short enough that it can obsolete the need for getElementById
- # [13:20] <annevk> and getElementsByTagName
- # [13:20] <Philip`> document.match(/.e + ul li > a/g)
- # [13:21] <Philip`> and rewrite the ECMAScript language a bit
- # [13:22] <Lachy> rewrite it like E4X did?
- # [13:22] <Lachy> should we make E5X?
- # [13:22] <Dashiva> ES4 is already rewriting it plenty
- # [13:23] <Lachy> annevk, what was your rationality for choosing matchSingle over matchOne?
- # [13:25] <annevk> people argued it sounded better and I agreed
- # [13:25] <annevk> I'm all for .match though
- # [13:25] <annevk> we should make E5H
- # [13:26] <Philip`> I'm sure you could set up some kind of type inference to work out that "var x = /a+b/; "aaaaab".match(x)" uses regexp parsing rules when setting x, and "var x = /a+b/; document.match(x)" uses CSS selector rules, and "var x = /a+b/; "aa".match(x); document.match(x)" would be a type error with an entirely incomprehensible error message
- # [13:27] <Lachy> .match was the name that started this whole debate. I'm not sure going back to it would solve anything
- # [13:28] <Lachy> I prefer matchOne over matchSingle, but not enough to justify changing it given that there's already an implementation in base2
- # [13:30] <annevk> matchOne is also harder to type on a qwerty keyboard than matchSingle
- # [13:30] <annevk> for me, anyway
- # [13:30] <annevk> but I suppose I could get used to either
- # [13:30] <annevk> DeanE said he could change the name btw, or alias it
- # [13:31] <Lachy> yeah, I know he could change it easily
- # [13:31] <Lachy> I don't see how One is easieer to type than Single
- # [13:38] <annevk> we need to add HTMLElement.isContentEditable and several things like queryCommand... on HTMLDocument...
- # [13:42] <annevk> queryCommandEnabled, queryCommandValue, queryCommandSupported
- # [13:47] <Dashiva> matchOnce?
- # [14:21] <zcorpan_> Hixie: comments in #writing needs to say that comments must not begin with > or ->
- # [14:50] * Joins: rubys (n=rubys@cpe-075-182-064-252.nc.res.rr.com)
- # [14:53] * Quits: MikeSmith (n=MikeSmit@u-210162009021.hotspot.ne.jp) (Read error: 110 (Connection timed out))
- # [14:55] * Quits: Lachy (n=Lachlan@203-158-59-119.dyn.iinet.net.au) (Read error: 110 (Connection timed out))
- # [14:58] * Joins: briansuda (n=briansud@85-220-95-76.dsl.dynamic.simnet.is)
- # [15:32] * Joins: syp|_ (n=syp@lasigpc9.epfl.ch)
- # [15:32] * Quits: syp| (n=syp@lasigpc9.epfl.ch) (Read error: 131 (Connection reset by peer))
- # [15:40] * Quits: syp|_ (n=syp@lasigpc9.epfl.ch) (Read error: 104 (Connection reset by peer))
- # [15:40] * Joins: syp| (n=syp@lasigpc9.epfl.ch)
- # [15:41] * annevk implemented new-style <nobr>
- # [15:42] <annevk> It seems end tag handling of some elements has also changed
- # [15:43] <annevk> most notably "/body" and "/head"
- # [15:51] <Philip`> Hmph, now I have enough tests that Safari won't run them all simultaneously without dropping the last couple of dozen and randomly crashing :-(
- # [15:52] <annevk> that's good :)
- # [15:53] <annevk> have you filed bugs on them already?
- # [15:53] <annevk> (I implemented new-style <link>, <meta>, <base> in html5lib)
- # [15:53] <annevk> jgraham, you need to fix the encoding sniffer for comment handling
- # [15:56] <rubys> found a bug in the html serializer: <p>a<b>c</p> => <p>a<b>c</p>; but only if a character encoding is specified.
- # [15:57] <annevk> does the html serializer implement the innerHTML algorithm?
- # [15:57] <Philip`> Looks like it's actually an intentional limit in WebKit - it won't display more than 200 iframes on a page
- # [15:57] <annevk> I honestly haven't followed all these treewalker, etc. additions
- # [15:57] <rubys> don't see 'inner' anywhere in the serializer.
- # [16:00] <annevk> maybe t.broyer should be invited on IRC...
- # [16:04] <Philip`> Hmm, can't do more than 200 of <object> either
- # [16:04] <annevk> maybe 200 object + 200 iframe? :)
- # [16:05] <rubys> Philip: perhaps you should get another browser? :-P
- # [16:05] <annevk> I wonder what the rationale is for this change: http://html5.org/tools/web-apps-tracker?from=917&to=918
- # [16:05] <Philip`> Seems to be limit of 200 on num_object+num_iframe
- # [16:06] <Philip`> rubys: Unfortunately I can't use another browser to run test cases in Safari :-(
- # [16:07] * rubys was joking
- # [16:08] <Philip`> Ooh, it even works fine in IE6
- # [16:08] <Philip`> (except for failing pretty much all of the test cases, obviously)
- # [16:10] * Joins: tantek (n=tantek@adsl-63-195-114-133.dsl.snfc21.pacbell.net)
- # [16:13] <annevk> you know what, I'll just implement the above change and see what happens
- # [16:15] * Quits: briansuda (n=briansud@85-220-95-76.dsl.dynamic.simnet.is)
- # [16:17] <Philip`> Also, I can't even do >200 iframes by having 16 iframes each containing 16 iframes
- # [16:18] <annevk> that's what I was afraid of
- # [16:18] <annevk> no testcase breaks
- # [16:18] <rubys> what change?
- # [16:19] <annevk> see the link above
- # [16:19] <annevk> http://html5.org/tools/web-apps-tracker?from=917&to=918
- # [16:20] <Philip`> http://trac.webkit.org/projects/webkit/browser/trunk/WebCore/html/HTMLFrameElementBase.cpp#L72
- # [16:21] * Philip` supposes he just has to do fewer tests at a time
- # [16:22] * Joins: briansuda (n=briansud@85-220-95-76.dsl.dynamic.simnet.is)
- # [16:23] <annevk> wow, sites rely on self-references
- # [16:23] <annevk> I suppose the aforementioned change affects whitespace handling
- # [16:25] * Joins: SavageX (n=maikmert@T6ca4.t.pppool.de)
- # [16:32] <annevk> the change also affects handling of </body><meta> for instance
- # [16:33] <annevk> I'm not sure this was a good change
- # [16:35] <annevk> mailed the list
- # [16:40] <annevk> changing how </p> works breaks quite a lot of tests
- # [16:42] * Quits: maikmerten (n=maikmert@L9a93.l.pppool.de) (Read error: 113 (No route to host))
- # [16:49] <annevk> I left that change out for now
- # [16:51] <Philip`> Aha, it works (about half the time, randomly) in Safari if I add a button which deletes all the iframes for completed tests and then recreates the iframes for tests that haven't loaded yet, and if I then change the text size up and down so it redraws the screen properly
- # [16:51] <Philip`> ...which is a totally horrible hack, but then I already need another hack to replace <iframe> with <object> so that it stops being invisible in Safari
- # [16:52] <Philip`> (though it only does that after it's finished loading the iframes, because it looks like onload doesn't run on objects)
- # [16:52] <annevk> why do you recreate the iframes?
- # [16:52] <annevk> just set frame.location ...
- # [16:52] * Joins: zcorpan (n=zcorpan@static-88.131.66.111.addr.tdcsong.se)
- # [16:56] <Philip`> That doesn't appear to work (is location only set after it's decided it's acceptable to load that iframe?), but it looks like setAttribute('src', getAttribute('src')) does it, so that's a bit nicer
- # [16:56] * Joins: billmason (n=billmaso@ip156.unival.com)
- # [16:57] * Philip` should probably just split the test-report-generating page into several pages of ~100 tests, and do something cleverer on the server side to merge all the results
- # [16:59] * Quits: zcorpan_ (n=zcorpan@pat.se.opera.com) (Read error: 110 (Connection timed out))
- # [17:15] * Quits: zcorpan (n=zcorpan@static-88.131.66.111.addr.tdcsong.se) (Read error: 110 (Connection timed out))
- # [17:21] * Joins: jcgregorio (n=chatzill@adsl-072-148-043-048.sip.rmo.bellsouth.net)
- # [17:23] <annevk> rubys, aren't < and > conforming in XML attribute values?
- # [17:23] * Joins: tantek_ (n=tantek@adsl-63-195-114-133.dsl.snfc21.pacbell.net)
- # [17:27] * Joins: zcorpan (n=zcorpan@pat.se.opera.com)
- # [17:29] * annevk wonders how the hell XMLHttpRequest.responseBody works
- # [17:32] <annevk> here's something to play with: http://software.hixie.ch/utilities/js/live-dom-viewer/?%3C%21doctype%20html%3Exxx%0D%0A%3Cscript%3E%0D%0A%20var%20r%20%3D%20new%20XMLHttpRequest%28%29%3B%0D%0A%20r.open%28%22GET%22%2C%20%22image%22%2C%20false%29%3B%0D%0A%20r.send%28%29%0D%0A%20var%20z%20%3D%20r.responseBody%3B%0D%0A%20for%20%28x%20in%20z%29%7B%0D%0A%20%20%20w%28z%5Bx%5D%29%0D%0A%20%7D%0D%0A%3C/script%3E
- # [17:33] <gsnedders> annevk: no, neither are conforming. [^<&>] is the definition, IIRC
- # [17:34] <annevk> data:text/html,<test test="<>">x</test>
- # [17:34] <gsnedders> actually, > is conforming.
- # [17:34] <annevk> please explain the lack of well-formedness error
- # [17:34] <annevk> oops
- # [17:34] <annevk> you're right
- # [17:34] <gsnedders> [10] AttValue ::= '"' ([^<&"] | Reference)* '"'
- # [17:34] <annevk> < isn't
- # [17:34] <gsnedders> (or with single quotes)
- # [17:34] <annevk> testcase should've been data:text/xml,<test test="<>">x</test>
- # [17:35] <annevk> they could easily allow < there...
- # [17:35] <gsnedders> but this is XML!
- # [17:35] <gsnedders> maybe due to it being a subset of SGML?
- # [17:36] <annevk> couldn't care less
- # [17:36] <mitsuhiko> is it <option selected> or <option selected="selected">?
- # [17:36] <annevk> either
- # [17:36] <mitsuhiko> awesome
- # [17:36] <annevk> or <option selected="">
- # [17:36] <mitsuhiko> annevk: is there a preferred way?
- # [17:37] <annevk> not really
- # [17:37] <gsnedders> isn't the value irrelevant, from the UA conformance POV?
- # [17:37] <annevk> yes
- # [17:37] <annevk> from an authoring point of view it isn't though
- # [17:37] <annevk> it's either the empty string or the attribute name
- # [17:39] <gsnedders> where is that defined in the spec (as the form elements currently reference WF2 which references HTML4) or is it not yet?
- # [17:39] <annevk> it's defined for things like contenteditable
- # [17:39] <annevk> Web Forms 2 is yet to be integrated
- # [17:40] <gsnedders> so it's really undefined as of writing in that case
- # [17:40] <annevk> the writing section defines those type of attributes
- # [17:41] <annevk> the concept boolean attribute is defined by the HTML5 spec
- # [17:42] <gsnedders> it doesn't appear to be defined what happens with a bool attribute when it exists but isn't either an empty string or the attribute's name
- # [17:42] <annevk> it is
- # [17:42] <rubys> annevk: in XML, > is legal in attribute values, but < is not
- # [17:43] <gsnedders> annevk: where?
- # [17:43] <annevk> "The presence of a boolean attribute on an element represents the true value, and the absence of the attribute represents the false value."
- # [17:43] <gsnedders> annevk: duh. of course the next section doesn't apply.
- # [17:43] <gsnedders> s/section/paragraph
- # [17:44] <annevk> that applies just to authors, yes
- # [17:45] * Quits: tantek (n=tantek@adsl-63-195-114-133.dsl.snfc21.pacbell.net) (Read error: 110 (Connection timed out))
- # [17:50] <gsnedders> hmm… you seem to be able to get the SGML handbook second-hand in good condition for less than a third of the cost of the ISO spec
- # [17:57] * Quits: zcorpan (n=zcorpan@pat.se.opera.com) (Read error: 110 (Connection timed out))
- # [17:59] * Quits: jruderman (n=jruderma@c-67-169-24-116.hsd1.ca.comcast.net) (Read error: 110 (Connection timed out))
- # [18:17] * Joins: Lachy (n=Lachlan@203-158-59-119.dyn.iinet.net.au)
- # [18:35] * Joins: h3h (n=w3rd@66-162-32-234.static.twtelecom.net)
- # [18:36] <rubys> annevk: you there?
- # [18:49] * Joins: jruderman (n=jruderma@c-67-169-24-116.hsd1.ca.comcast.net)
- # [19:03] * Joins: weinigLap (i=weinig@nat/apple/x-5cbb572c42b77131)
- # [19:12] * Joins: Ducki (n=Alex@dialin-145-254-188-216.pools.arcor-ip.net)
- # [19:29] * Quits: psa (n=yomode@posom.com) ("All things must come to an end")
- # [19:33] * Joins: psa (n=yomode@posom.com)
- # [19:35] * Quits: jruderman (n=jruderma@c-67-169-24-116.hsd1.ca.comcast.net)
- # [19:36] * Parts: BenWard (i=BenWard@nat/yahoo/x-14b34d0dafe9d0bb)
- # [19:41] * Joins: virtuelv_ (n=virtuelv@47.80-202-66.nextgentel.com)
- # [19:48] * Joins: aroben (n=adamrobe@17.255.98.199)
- # [20:00] * Joins: duryodhan (n=dev@221.128.138.37)
- # [20:05] * Quits: virtuelv_ (n=virtuelv@47.80-202-66.nextgentel.com) (Read error: 110 (Connection timed out))
- # [20:06] * Joins: jruderman (n=jruderma@corp-242.mountainview.mozilla.com)
- # [20:10] * om_sleep is now known as othermaciej
- # [20:11] * Joins: tantek (n=tantek@adsl-63-195-114-133.dsl.snfc21.pacbell.net)
- # [20:11] * Joins: virtuelv_ (n=virtuelv@47.80-202-66.nextgentel.com)
- # [20:13] * Quits: virtuelv_ (n=virtuelv@47.80-202-66.nextgentel.com) (Client Quit)
- # [20:13] * Joins: virtuelv_ (n=virtuelv@47.80-202-66.nextgentel.com)
- # [20:13] * Joins: epeus (n=KevinMar@137.164.255.50)
- # [20:14] <duryodhan> hey, some told me this :
- # [20:14] <duryodhan> irefox implements the canvas element which is
- # [20:14] <duryodhan> actually able to catch part of the screen as bitmap and display it to
- # [20:14] <duryodhan> the user. It is also able to convert the bitmap to base64.
- # [20:14] <duryodhan> *firefox
- # [20:14] <duryodhan> is this true?
- # [20:14] <duryodhan> about the canvas element?
- # [20:16] <Dashiva> Safari, Opera and Firefox all implement canvas
- # [20:17] <duryodhan> yes ...
- # [20:17] <duryodhan> I know that ...
- # [20:17] <duryodhan> I am saying can Canvas do that ...
- # [20:17] <duryodhan> (save a part of page as bitmap and then save it as base64)
- # [20:18] <Dashiva> You mean basically print-screen the page and then work with that?
- # [20:18] <duryodhan> yeah
- # [20:18] <duryodhan> kinda
- # [20:18] <Philip`> Firefox has a non-standard extension which lets privileged content (like extensions) draw HTML elements into the canvas
- # [20:19] <duryodhan> where?
- # [20:19] <Philip`> (which I believe is used by e.g. the tab preview extension)
- # [20:19] <bewest> yeah, a lot of people who prorivide screenshot services use that feature
- # [20:19] <duryodhan> so can I do it through HTML + JS ?
- # [20:20] <duryodhan> or will it always require an extension?
- # [20:20] <duryodhan> and can it convert it to base64
- # [20:21] <Philip`> I can't see any documentation, but it looks like it's ctx.drawWindow(htmlelement, x, y, w, h, backgroundcolour)
- # [20:21] * Quits: KevinMarks (n=Snak@c-76-102-254-252.hsd1.ca.comcast.net) (Nick collision from services.)
- # [20:21] * epeus is now known as KevinMarks
- # [20:21] <Philip`> but you'll always get a security exception if you try doing that from normal web content
- # [20:22] <duryodhan> but if user adds the domain to trusted ... do you still get that ?
- # [20:23] <Philip`> That still won't let it run; though I think it's possible to make web content ask the user for universal read privileges, in which case it would be allowed
- # [20:23] <Philip`> (though you probably have to be a trusted site before even being able to ask for permission)
- # [20:24] <Philip`> (and you have to ask for permission every time you want to use drawWindow)
- # [20:24] <duryodhan> ohh
- # [20:24] <duryodhan> stupid mozilla server has klined me :(
- # [20:24] <Philip`> netscape.security.PrivilegeManager.enablePrivilege('UniversalBrowserRead');
- # [20:25] <Philip`> ...should give the right privileges, I think
- # [20:26] * Quits: tantek_ (n=tantek@adsl-63-195-114-133.dsl.snfc21.pacbell.net) (Read error: 110 (Connection timed out))
- # [20:27] <Philip`> Once you've drawn stuff to the canvas, http://www.whatwg.org/specs/web-apps/current-work/multipage/section-the-canvas.html#todataurl lets you save it as a bitmap (as a base64-encoded PNG image in a data: URI)
- # [20:28] <duryodhan> hmm let me try it out then ....
- # [20:28] * Philip` wonders if people have already complained about Gecko adding non-standard functions to the '2d' context, instead of making a 'moz-2d'
- # [20:30] <Philip`> (...and adding non-standard arguments to the toDataURL function)
- # [20:31] * Quits: ROBOd (n=robod@86.34.246.154) ("http://www.robodesign.ro")
- # [20:31] <duryodhan> Philip`: what is the ctx in the ctx.drawwindow ?
- # [20:31] <Philip`> ctx = canvas.getContext('2d')
- # [20:31] <Philip`> where canvas is a <canvas> element
- # [20:32] <Philip`> (...which should be big enough to fit whatever you want to draw into it)
- # [20:32] <duryodhan> and the html element is lets say div ? or is it canvas again?
- # [20:33] <Philip`> (You can do 'canvas = document.createElement('canvas'); canvas.width = 123; canvas.height = 456' if you want a canvas element without actually having one in the HTML document)
- # [20:34] <Philip`> The htmlelement in the first argument to drawWindow can be any HTML element at all
- # [20:34] <Philip`> or at least I assume it can be - I've never actually tried this myself :-)
- # [20:35] <Philip`> http://weblogs.mozillazine.org/roc/archives/2005/05/rendering_web_p.html has an example using drawWindow, and it looks like the interface hasn't changed since then
- # [20:35] * Joins: ROBOd (n=robod@86.34.246.154)
- # [20:39] * Quits: jruderman (n=jruderma@corp-242.mountainview.mozilla.com)
- # [20:39] * Quits: tantek (n=tantek@adsl-63-195-114-133.dsl.snfc21.pacbell.net) (Read error: 104 (Connection reset by peer))
- # [20:39] * Joins: tantek (n=tantek@adsl-63-195-114-133.dsl.snfc21.pacbell.net)
- # [20:42] * Joins: jruderman (n=jruderma@corp-242.mountainview.mozilla.com)
- # [20:44] * Joins: Ducki_ (n=Alex@dialin-212-144-083-056.pools.arcor-ip.net)
- # [20:44] <duryodhan> http://pastebin.ca/579563
- # [20:44] <duryodhan> us that ok?
- # [20:44] <duryodhan> how do I get the png file ?
- # [20:45] * Joins: zcorpan (n=zcorpan@84-216-42-213.sprayadsl.telenor.se)
- # [20:46] * SavageX is now known as maikmerten
- # [20:49] * Quits: billmason (n=billmaso@ip156.unival.com) (Read error: 104 (Connection reset by peer))
- # [20:50] * Joins: billmason (n=billmaso@ip156.unival.com)
- # [20:58] * Joins: dbaron (n=dbaron@corp-242.mountainview.mozilla.com)
- # [21:02] <Philip`> duryodhan: Hmm, looks like I was wrong about it accepting any HTML element - it has to be a window object
- # [21:03] <Philip`> http://canvex.lazyilluminati.com/misc/drawwindow.html (when run from local disk so it's more-trusted) seems to work for me
- # [21:03] * Quits: Ducki (n=Alex@dialin-145-254-188-216.pools.arcor-ip.net) (Connection timed out)
- # [21:03] <Philip`> It draws the whole page window into the canvas, and then uses toDataURL to get an address which can be used in <img src> or could be parsed to get the actual PNG data
- # [21:08] * Quits: briansuda (n=briansud@85-220-95-76.dsl.dynamic.simnet.is)
- # [21:08] <duryodhan> Philip`: ohh ok
- # [21:08] <duryodhan> it works for me too...
- # [21:08] <duryodhan> but then the problem is still there ...
- # [21:09] <duryodhan> I don't think an actual page can do this cos it requires that page be on local disk
- # [21:09] <duryodhan> btw,
- # [21:09] <duryodhan> it is showing it to me twice ...
- # [21:10] <Philip`> Is there some way to mark pages as trusted in FF? That ought to make it work the same as files on disk, I think, though I can't work out where you find that option
- # [21:11] <Philip`> It should be showing the original text once, and then the rendered version in the <canvas>, and then the toDataURLd version in the <img> just to the right
- # [21:11] <duryodhan> yes
- # [21:11] <duryodhan> thats right
- # [21:13] * Parts: rubys (n=rubys@cpe-075-182-064-252.nc.res.rr.com)
- # [21:17] <duryodhan> maybe you have to make the html+script signed , package them as jar files with signtool and then access them...
- # [21:17] <duryodhan> http://www.mozilla.org/projects/security/components/signed-scripts.html
- # [21:17] <duryodhan> search for using signtool in that
- # [21:17] <Philip`> Hmm, sounds painful
- # [21:17] <duryodhan> yeah
- # [21:18] <duryodhan> for the devel
- # [21:18] <duryodhan> not for the client
- # [21:18] <Philip`> Sounds like it might be easier just to write an extension, particularly since that could avoid asking the user for permission every time
- # [21:19] <duryodhan> an extension that does what ?
- # [21:19] <duryodhan> takes a snap when told and saves it
- # [21:19] <duryodhan> suppose I want to submit the base64 to the server (of the canvas)
- # [21:19] <duryodhan> in a form ...
- # [21:21] * Quits: KevinMarks (n=KevinMar@137.164.255.50) ("The computer fell asleep")
- # [21:23] <Philip`> An extension that does whatever you're trying to do that Firefox normally objects to
- # [21:24] <Philip`> You should be able to just call toDataURL and put the resulting string in a form field and submit that, though you'll probably have to strip off the "data:image/png;base64," before trying to decode it into a real PNG
- # [21:24] <Philip`> (It's not guaranteed to be base64, but I don't know of any implementation that doesn't do that, and you can't do drawWindow in a vaguely cross-browser way anyway)
- # [21:28] <zcorpan> seems like ie stops appending characters to the string when getting innerHTML after it has dealt with the children of a plaintext element
- # [21:28] <zcorpan> hmm, wc
- # [21:44] * Quits: othermaciej (n=mjs@dsl081-048-145.sfo1.dsl.speakeasy.net)
- # [21:45] * Quits: virtuelv_ (n=virtuelv@47.80-202-66.nextgentel.com) ("Leaving")
- # [21:50] * Quits: maikmerten (n=maikmert@T6ca4.t.pppool.de) ("Leaving")
- # [21:54] * Quits: aroben (n=adamrobe@17.255.98.199)
- # [21:58] * Joins: aroben (n=adamrobe@17.255.98.199)
- # [21:59] * Joins: webben (n=benh@91.84.143.253)
- # [22:03] * Joins: Jero (n=Jero@d207230.upc-d.chello.nl)
- # [22:06] * Quits: tantek (n=tantek@adsl-63-195-114-133.dsl.snfc21.pacbell.net) (Read error: 110 (Connection timed out))
- # [22:06] <jgraham> annevk: Can you file a bug on me about the character encoding change? I am really swamped with stuff at the moment so I'm missing out on all the html5lib fun :(
- # [22:19] <Hixie> i really have no idea how to describe the rules for CDATA and RCDATA
- # [22:19] <Hixie> for authors
- # [22:20] * Joins: hendry (i=hendry@conference/debconf/x-584c49a880c8d56d)
- # [22:27] * Joins: weinigLap_ (n=weinig@17.255.97.148)
- # [22:27] * Joins: BenWard (n=BenWard@cpc3-cmbg2-0-0-cust58.cmbg.cable.ntl.com)
- # [22:29] <hsivonen> Hixie: delegate to tutorial volunteers perhaps to see what they come up with?
- # [22:36] * Quits: BenWard (n=BenWard@cpc3-cmbg2-0-0-cust58.cmbg.cable.ntl.com)
- # [22:37] * Quits: weinigLap (i=weinig@nat/apple/x-5cbb572c42b77131) (Read error: 110 (Connection timed out))
- # [22:37] <Hixie> while i am sure that what they would come up with would be quite helpful to authors, i don't think it would be airtight
- # [22:38] <hsivonen> yeah.
- # [22:38] <hsivonen> it seems that few people appreciate the airtight restatement in prose :-(
- # [22:39] * Philip` wonders how to test (and report results for) optional features, like gradient rendering, where there are different requirements if the feature is not supported, but there's no way to really tell whether the UA is actually trying to support the feature (but buggily) or intentionally and consistently choosing to not support it
- # [22:39] <Hixie> hsivonen: the target audience of the syntax section is basically me -- or rather, spec lawyers in years to come. i don't want them to have to prove their case about whether something is conforming or not by walking the parsing algorithm
- # [22:41] <hsivonen> Hixie: I understand. I'd expect those who markp calls "assholes" to prefer airtight prose over walking the algorithm
- # [22:43] <Hixie> yeah
- # [22:43] <hsivonen> Hixie: perhaps define them in terms of a sequence of subparts like "escaped run", "unescaped text", "entity"
- # [22:43] <Hixie> that's basically the target audience
- # [22:43] * Quits: mpt (n=mpt@121-72-128-43.dsl.telstraclear.net) ("This computer has gone to sleep")
- # [22:44] <Hixie> yeah, i think i'll basically have to do that
- # [22:44] <Hixie> though not with the word "entity"!
- # [22:44] <hsivonen> well entity reference
- # [22:44] <hsivonen> for RCDATA
- # [22:44] * Joins: Ducki__ (n=Alex@dialin-145-254-189-096.pools.arcor-ip.net)
- # [22:45] <Hixie> oh right
- # [22:45] <Hixie> indeed
- # [22:50] * Quits: ROBOd (n=robod@86.34.246.154) ("http://www.robodesign.ro")
- # [22:50] * Joins: KevinMarks (n=KevinMar@137.164.255.50)
- # [22:54] * Joins: BenWard (n=BenWard@cpc3-cmbg2-0-0-cust58.cmbg.cable.ntl.com)
- # [22:56] * Joins: othermaciej (n=mjs@17.255.100.206)
- # [22:58] * Quits: othermaciej (n=mjs@17.255.100.206) (Client Quit)
- # [22:59] * Joins: aroben_ (n=adamrobe@17.203.15.248)
- # [23:00] * Quits: psa (n=yomode@posom.com) ("All things must come to an end")
- # [23:01] * Quits: hendry (i=hendry@conference/debconf/x-584c49a880c8d56d) ("leaving")
- # [23:01] * Joins: hendry (i=hendry@conference/debconf/x-1deb80bd9838b8d7)
- # [23:04] * Quits: Ducki__ (n=Alex@dialin-145-254-189-096.pools.arcor-ip.net) (Read error: 104 (Connection reset by peer))
- # [23:04] * Joins: othermaciej (n=mjs@17.255.100.206)
- # [23:06] * Quits: Ducki_ (n=Alex@dialin-212-144-083-056.pools.arcor-ip.net) (No route to host)
- # [23:14] * Quits: gsnedders (n=gsnedder@host86-140-190-99.range86-140.btcentralplus.com)
- # [23:17] * Quits: othermaciej (n=mjs@17.255.100.206)
- # [23:18] * Quits: BenWard (n=BenWard@cpc3-cmbg2-0-0-cust58.cmbg.cable.ntl.com)
- # [23:19] * Joins: othermaciej (n=mjs@17.255.100.206)
- # [23:20] * Joins: gsnedders (n=gsnedder@host86-140-190-99.range86-140.btcentralplus.com)
- # [23:20] * Quits: aroben (n=adamrobe@17.255.98.199) (Read error: 110 (Connection timed out))
- # [23:25] * Joins: tantek (n=tantek@corp.technorati.com)
- # [23:25] * Quits: Jero (n=Jero@d207230.upc-d.chello.nl) ("ChatZilla 0.9.78.1 [Firefox 2.0.0.4/2007051502]")
- # [23:30] * Quits: hendry (i=hendry@conference/debconf/x-1deb80bd9838b8d7) ("tomorrow")
- # [23:32] * Joins: BenWard (n=BenWard@cpc3-cmbg2-0-0-cust58.cmbg.cable.ntl.com)
- # [23:39] * Quits: weinigLap_ (n=weinig@17.255.97.148) (Remote closed the connection)
- # [23:40] * Joins: weinigLap (n=weinig@17.255.97.148)
- # [23:59] * Joins: aroben (n=adamrobe@17.255.98.199)
- # Session Close: Thu Jun 21 00:00:00 2007
The end :)