02:16
<Hixie>
http://www.hixie.ch/tests/adhoc/dom/level0/document/open/007.html
02:16
<Hixie>
can someone explain to me IE's behavior with that test
05:39
<MikeSmith>
is the HTML5 SQL database feature supported in Mozilla trunk now?
05:39
<MikeSmith>
I noticed http://twitter.com/millenomi/status/1072607044
05:39
<MikeSmith>
"@factoryjoe It's just HTML5 databases put to use. Already available in Safari 3.0 and up and recent Firefoxes."
05:43
<MikeSmith>
ne'er mind
05:48
<MikeSmith>
the Opera 10 "Download All Snapshots" feature doesn't seem to be working for me
05:49
<MikeSmith>
I see from http://my.opera.com/desktopteam/blog/2008/12/19/the-christmas-edition that a new snapshot is available
05:50
<MikeSmith>
and I have the "download all snapshots" option selected
05:50
<MikeSmith>
but if I do "check for updates", Opera tells me I already have the latest version
06:18
<MikeSmith>
I guess Edward Yang's been making progress on his HTML5 parser in PHP
06:18
<MikeSmith>
yesterday: http://twitter.com/ezyang/status/1071810135 "The score... Edward: 425, HTML5: 739 + 8 infinite loops."
06:19
<MikeSmith>
today about 30 minutes ago: http://twitter.com/ezyang/status/1073793318 "Final score... Edward: 1108, HTML5: 0. Of course, that's ignoring tests of parse errors, doctypes and self-closed tags."
07:21
<yecril71>
The instruction
07:21
<yecril71>
w.w = window
07:21
<yecril71>
creates a proxy.
07:22
<yecril71>
Immediately after that, !(w.w === window).
07:22
<yecril71>
Because w.w is a proxy to window.
07:23
<yecril71>
It has nothing to do with document.open.
07:25
<yecril71>
U+000B is a range.
07:26
<yecril71>
It begins with U+000B and ends with U+000B.
07:26
<yecril71>
(Or it can be trivially coalesced to a range, if you prefer).
07:28
<yecril71>
I can see no necessity to delete an image for a page that the user failed to save on the server.
07:28
<yecril71>
Once the user uploads the image to the server, it can remain there until the user explicitly requests its deletion.
07:34
<Hixie>
yecril71: window.w = window; window.w === window;
07:34
<Hixie>
is true
07:43
<yecril71>
However, w.w !== window.
07:43
<yecril71>
window.w = window is equivalent to w = window.
07:43
<yecril71>
w.w = window is different.
07:46
<weinig>
yecril71: what is the first w
07:46
<weinig>
yecril71: cause it looks like that should be a reference error
07:47
<Hixie>
window.w = window; w.w === window is true
07:48
<yecril71>
The first w is a parameter to b.
07:49
<weinig>
ok, this is about Hixie's test
07:50
<yecril71>
alert(w.w === window) shows false at my place, immediately after the assignment.
07:51
<yecril71>
window.w = window is equivalent to w = window.
07:52
<yecril71>
I think Hixie needs some sleep.
07:54
<yecril71>
undefined == undefined, as of the Microsoft engine.
07:56
<yecril71>
"window.window.window" is not the same as "".
07:56
<yecril71>
"window.window.window." is.
07:56
<yecril71>
But only in the global context.
07:57
<jwalden_>
I think none of you are being particularly clear
07:57
<jwalden_>
:-P
07:57
<yecril71>
Prefixing with "window." can be used to single out global variables.
07:58
<yecril71>
Dead season for thinking :-P
08:00
<yecril71>
"window" does not belong to javascript. WSH has no "window".
08:00
jwalden_
nitpickingly wishes that page closed the document it opened so the browser throbber would stop
08:02
yecril71
concurs
08:18
<annevk>
http://twitter.com/jontangerine/statuses/1027745900 ?
08:21
<annevk>
http://twitter.com/laura_carlson/statuses/1066180499 lol
10:54
<Lachy>
jgraham, it's interesting that the some of the things you listed technically aren't HTML
10:56
<jgraham>
Lachy: In what sense?
10:56
<Lachy>
Offline Storage is a DOM API, MathML and SVG
10:57
<annevk>
offline storage is also <html manifest> ...
10:57
<jgraham>
Lachy: Well it's in "HTML5". It's only "not HTML" if you try to make some distinction between HTML the markup language and HTML the application platform
10:58
<Lachy>
annevk, that would be covered by offline applications in his list
10:58
<jgraham>
(also the ability to embed SVG+MathML is a feature of the markup language so I disagree with that regardless of definitions)
10:59
<jgraham>
s/that/that not being technically not HTML/
10:59
<jgraham>
s/not being/being/
11:03
<jgraham>
(I guess Web Sockets should make the top 5 but I don't kno what to drop...)
11:34
<annevk>
parsing rules
11:34
<annevk>
they're boring :)
11:35
<jgraham>
annevk: Yeah, but "better browser interoperability" is interesting
11:36
<annevk>
not as interesting as web sockets :p
11:38
<jgraham>
I was thinking "Rich Form Controls" were sort of covered on the original list so they maybe didn't need to be covered again
11:38
<hendry>
annevk: have you seen the socket demo here http://www.jnext.org/
12:07
<Philip`>
jgraham: MathML+SVG in text/html doesn't seem like it'd be an exciting feature to many people - almost nobody even uses non-inline SVG, despite that being easy and useful and well supported
12:07
<olliej>
yoyo annevk
12:09
<Philip`>
jgraham: Also I don't see why anyone would care about parsing rules, because they can just write proper valid pseudo-XHTML like they always have and it'll work fine in current browsers
12:11
<Philip`>
Things that are exciting to people here are probably almost completely separate from what is exciting to normal people :-)
12:20
<jgraham>
Philip`: IIRC there was a bug in an early version of Google maps that was due to a difference in parsing comments before the HTML element or somesuch
12:20
<Philip`>
Most people don't write Google Maps
12:21
<jgraham>
Yes, but most people don't write site x for any value of x
12:21
<Philip`>
Most people don't write sites of equivalent complexity to Google Maps
12:21
<Lachy>
yeah, most people don't get too excited about the parsing rules themselves. They will only get indirectly appreciate them once they start seeing real practical results from more interoperable browsers
12:22
<Lachy>
s/only get/only/
12:22
<jgraham>
I know :) But I thought that high on authors list of complaints about HTML was poor interoperability
12:23
<Philip`>
I think I've encountered DOM uninteroperability far more than parsing uninteroperability
12:23
<Lachy>
CSS and DOM interop are bigger issues
12:23
<jgraham>
Obviouslyt HTML5 won't help with the CSS or DOM problems but it seems like something that helps interoperability would be seen as good
12:26
<hsivonen>
cool things are HTML5 features. see http://www.google.com/search?q=%22html5+geolocation%22
12:27
<hsivonen>
as for quality and popularity, see w3schools :-(
12:27
<Philip`>
jgraham: "helps interoperability" seems too abstract a concept to get excited about - people will only care when it's solving the real problems they encounter, which are much more likely to be CSS and DOM problems
12:28
<Lachy>
where do people get the idea that geolocation is part of HTML5?
12:28
<jgraham>
Lachy: Everything cool happening in the web is part of HTML5
12:29
<jgraham>
(actually geolocation was floated on WHATWG list at one point so that might be why)
12:32
Philip`
hopes browsers could detect when they are running on a desktop PC, and therefore are unlikely to be moved, so if they don't have a GPS receiver then they could simply ask the user to enter their address once and then they will be able to implement the Geolocation API
12:34
<Philip`>
(and for laptops they could just ask for the address of each wireless access point you connect to)
12:35
<Lachy>
Philip`, or they could use wi-fi access point triangulation techniques
12:42
gsnedders
hit an interoperability issue in Prince yesterday
12:44
<jgraham>
It raised an OutOfCash eception on your bank account?
12:45
<jgraham>
*exception
12:54
<Philip`>
Lachy: That sounds like something that would need added OS and driver support (and hardware support too?), so it's unlikely to happen any time soon except on mobile devices
12:58
<Lachy>
Philip`, AFAIK, it only needs software that works like Navizon and an internet connection
15:39
<annevk>
Philip`, Skyhook already works on laptops, no?
15:41
<annevk>
hmm, maybe not
15:48
<Philip`>
annevk: Sounds like it could do - it seems to just look at the signal strength of visible WAPs and compare against a database of predetermined locations of known WAPs, and doesn't need any lower-level access to the wireless hardware
15:49
<Philip`>
I was assuming "wi-fi access point triangulation" was something that depended more on physical properties of the wireless signal or something
15:51
<jgraham>
There are places with enough known WAPs that that works?
15:53
<Philip`>
Presumably only in cities with enough customers to justify the data collection to seed the system
15:53
<Philip`>
(then it sounds like it'll update the location database dynamically when users encounter new unknown WAPs)
15:53
<annevk>
jgraham, apparently so
15:54
<Philip`>
You only have to make it work in the cities where tech reviewers live :-)
15:57
<jgraham>
Philip`: I guess that is true. Maybe just "return Silicon Valley" would be a good v1 implementation, with "improved accuracy" being a v2 feature
15:58
<jgraham>
(I guess it would be just as useful as an implementation that required an actual wifi signal around here)
15:59
gavin
wonders how it uniquely identifies access points
15:59
<gavin>
I suppose just using the MAC address is probably good enough, but I wonder if they try using more than that to avoid problems with spoofing
16:03
jgraham
notes that Skyhook do indeed show a map of San Fransisco as their example of urban coverage
16:03
<jgraham>
and that there is no coverage here :)
16:04
<jgraham>
gavin: http://www.skyhookwireless.com/howitworks/submit_ap.php implies that it is just MAC address
16:05
<Philip`>
My computer seems to like identifying WAPs by their BSSID
16:05
<Philip`>
which appears to be typically the same as the MAC
16:06
gavin
helps them out by submitting the ~6 AP MAC addresses he can currently see from Orleans, Ontario
16:06
<annevk>
I wonder if there's an "open data" equivalent
16:07
<gavin>
hmm, that would be cool
16:07
Philip`
should submit the 11 WAPs he can see from his small village in England, while claiming to be in New York
16:13
<gavin>
hmm, they already have data for "six Canadian markets where the majority of that nation’s people live" apparently
16:14
gavin
decides he doesn't want to help them out
16:16
jgraham
has visions of lots of canadians living in market stalls
16:45
<annevk>
hsivonen, CSS3 has vh and vw units
16:45
<annevk>
(re: some question from 1220)
16:45
<annevk>
s/question/wish/
16:47
<BenMillard>
krijnh, possible new slogan for the logs: http://krijnhoetmer.nl/irc-logs/whatwg/20081223#l-205
16:48
<annevk>
krijnh, there should be a CSS rule for .flagged:target
16:53
<BenMillard>
annevk, you can sneak extra rules into the "CSS for ..." textboxes on the IRC Logs front page
16:54
<BenMillard>
annevk2, I'm using this in "CSS for lines at you": background: #efe; } li.flagged { background: #9f9; } li:target { background: #fa0;
16:54
<krijnh>
BenMillard: sorry I didn't respond to your log improvements a few days back
16:54
<BenMillard>
krijnh, hey no worries :)
16:54
<annevk>
BenMillard, sure, but I want krijnh to fix it :p
16:55
<krijnh>
Color?
16:55
<BenMillard>
annevk, does having a checkbox instead of a coloured <span> help? http://projectcerbera.com/!dev/irc-logs/day
16:56
<annevk>
oh, I like your color scheme
16:57
<BenMillard>
yay :)
16:57
krijnh
too :)
16:57
<BenMillard>
there's demos for other types of page if you click "IRC Logs" or chop the end off the URL
16:58
<BenMillard>
the colours are copied from the whatwg.org spec CSS
16:58
<krijnh>
Just no time to implement/copy them yet
16:58
<BenMillard>
yeah, modifying irc logging systems when it's nearly Xmas would be pretty sad :P
16:59
<krijnh>
Correct ;)
16:59
<annevk>
hey, I was considering hacking on my blog!
17:01
<krijnh>
I'm...My girlfriend is considering visiting our parents ;)
17:01
<annevk>
my parents considered as much for me :p
17:10
Philip`
wonders if working on tokenisers over Christmas would also be considered pretty sad :-)
17:12
<BenMillard>
I'll probably be doing family stuff
17:31
<annevk>
Philip`, jgraham and I did that (or at least close to Christmas) two years ago
17:32
<annevk>
not sure if that answers your question though :)
19:18
<takkaria>
Philip`: I plan to be doing that too
19:29
<Hixie>
annevk: i
19:29
<Hixie>
er
19:29
<Hixie>
annevk: i've run into a lot of people who think that "html5" is the name for the open web standards stack
20:09
<gsnedders>
hmm…
20:10
gsnedders
still hasn't worked out how to organize his English notes
20:12
<gsnedders>
I want to have a quote, and notes related to that quote
20:12
<gsnedders>
And then I want to categorize those quotes
20:13
<gsnedders>
The only problem is some quotes need to be in multiple categories
20:13
<takkaria>
can you not use a text editor like everyone else? :)
20:13
<gsnedders>
takkaria: :P
20:13
<gsnedders>
takkaria: My problem is I don't want to duplicate the notes.
20:14
<jmb>
ah. you want transclusion </ted nelson>
20:34
<Philip`>
gsnedders: Use tags, not categories
20:35
<gsnedders>
But I can't be bothered writing code :P
20:35
<Philip`>
(Then you could make a tag cloud! It'd be great)
20:35
<gsnedders>
Ideally I want the quotes sorted by page reference
20:54
<gsnedders>
Does IE6 support XPath?
20:57
<gsnedders>
What would be the most performant way of doing something like //dd[starts-with(., "Themes: ")]?
20:59
<Philip`>
/<dd>Themes: /.match(document.body.innerHTML)
21:00
<gsnedders>
While actually returning the dd element?
21:01
<Philip`>
/<dd>Themes: (.*?)<\/dd>/.match(document.body.innerHTML)
21:02
<gsnedders>
The sad thing is I know that probably will really be the quickest solution
21:04
<Philip`>
There's no need to overcomplicate things :-)
21:05
gsnedders
gets "TypeError: Result of expression '/<dd>Themes: (.*?)<\/dd>/.match' [undefined] is not a function."
21:05
<Philip`>
I can never remember how JS RegExps work - check the documentation :-p
21:06
<Philip`>
(I can never remember how Python 're' works either)
21:06
<Philip`>
(But I can always remember in Perl that you just do $foo =~ /bar/ which is nice and easy and doesn't involve forgettable method names)
21:07
<gsnedders>
String.match or RegExp.exec
21:13
<gsnedders>
document.body.innerHTML.match(/<dd>Themes: (.*)/g) returns stuff
21:13
<gsnedders>
document.body.innerHTML.match(/<dd>Themes: (.*)<\/dd>/g) does not
21:14
<gsnedders>
. doesn't match new lines, does it?
21:15
<Philip`>
It only does if you add the /s flag
21:15
<Philip`>
(You probably want .*? rather than .* otherwise it'll break if you have more than one dd element)
21:16
gsnedders
could just go for the http://pastie.org/345813 suggestion
21:16
<Philip`>
How boring
21:16
<gsnedders>
:)
21:17
<Philip`>
That for loop seems like a good example of premature optimisation
21:18
gsnedders
didn't write it
21:20
<gsnedders>
"iirc, for in has problems in IE"
21:22
Philip`
was thinking of the use of 'max', rather than of anything involving 'for in'
21:22
<gsnedders>
ah, that
21:35
<gsnedders>
Who wants to bet I write more code for my English dissertation notes than I do for my computing project over the holidays? :)
21:37
<Philip`>
And more English for your computing project than for your English dissertation notes?
21:37
<gsnedders>
Nah
21:40
<gsnedders>
Is there any sort of mapping structure in JS?
21:41
<Philip`>
gsnedders: What do you mean by 'mapping'?
21:41
<gsnedders>
Philip`: like a Python dict, a key/value mapping structure
21:41
<Philip`>
gsnedders: {'key':'value'}
21:41
<gsnedders>
heh
21:41
<Philip`>
and thing.key = value
21:42
<Philip`>
JS barely has any structures *except* the mapping structure :-)
21:43
<gsnedders>
Is there anyway to get an array of keys?
21:44
<Philip`>
var ks = []; for (var k in thing) ks.push(k); is the only way I know of
21:44
<gsnedders>
ah, sux :\
21:44
<Philip`>
or [k for (k in thing)] if you're using Firefox, maybe
21:45
<gsnedders>
I need more than Fx support :P
21:45
<gsnedders>
(I need it to work on school computers running IE6)
21:46
<Philip`>
Just write a function keys(obj) { ... } and then you'll never have to worry about it again
21:49
<gsnedders>
How do you do a string replace in Javascript (a non-regex one)?
21:50
gsnedders
concludes you don't
21:50
<Philip`>
Wild guess: thing.replace("foo", "bar")
21:51
<takkaria>
you know, using plain text works everywhere
21:51
<Philip`>
takkaria: If you really want it to work everywhere, you'd have more luck with paper than with plain text
21:57
<gsnedders>
Philip`: I guess you'd start to hit issues with water, though.
21:58
gsnedders
has more bug reports on SP due to XML parse errors
21:58
<gsnedders>
annevk: Can you finish XML5, please?
22:01
<Philip`>
gsnedders: That's not much of a problem - you can get waterproof paper, and then you can write with it underwater by cutting it into stencilled letter shapes
22:05
gsnedders
wonders WTF is going on
22:06
<gsnedders>
http://pastebin.com/m7a92716b — how come the two alerts aren't the same?
22:07
<gsnedders>
Like, "Themes: Protagonist's Introspection" v. "undefined"
22:09
<Philip`>
gsnedders: Because in the second one, element === 0
22:09
<gsnedders>
why!?
22:09
<Philip`>
gsnedders: Because 'for in' iterates over keys, not values
22:09
<gsnedders>
oh.
22:09
<gsnedders>
duh.
22:09
<Philip`>
and the key is 0
22:09
<Philip`>
(and the value is what you want)
22:09
<gsnedders>
Yeh.
22:09
<jruderman>
for each ... in ;)
22:09
<Philip`>
You could use 'for each' if you only want to work in Firefox :-)
22:10
<gsnedders>
And if I want it to work in anything else for(i=0…)
22:10
<gsnedders>
?
22:10
<Philip`>
That's probably the easiest way
22:12
<gsnedders>
meh
22:13
<gsnedders>
lovely Javascript…
22:13
<Philip`>
It's your fault for using crippled browsers that don't support modern JS features :-p
22:13
<gsnedders>
:P
22:56
<annevk>
twitter works
23:09
<annevk>
Hixie, "WHATWG" could be it once we take over the appropriate specs
23:09
annevk
blinks
23:35
<Hixie>
heh
23:43
Philip`
becomes unhappy with Perl's JSON module turning "10.00" into 10.00 and therefore losing information
23:44
Philip`
also doesn't like how the current version of the module is totally different to the earlier version that he has installed