2011-03-01 [16:52:00.0000] does anyone implement text-align: "." yet? [16:52:01.0000] No. [16:52:02.0000] we should really do something about that [16:53:00.0000] Agreed. [16:53:01.0000] do you know what spec it's in [16:53:02.0000] ? [16:53:03.0000] Text. [16:53:04.0000] thanks [16:53:05.0000] what's that supposed to do? [16:54:00.0000] It does some magic to make things line up on the first occurence of the specified string. [16:54:01.0000] o_O [16:54:02.0000] It only works on table cells. [16:54:03.0000] o_O² [16:55:00.0000] Well, there's no sane way to do it outside of a table-cell. [16:55:01.0000] http://dev.w3.org/csswg/css3-text/#text-align [16:55:02.0000] trust me, it also doesn't sound sane if you throw table cells into the mix :> [16:55:03.0000] Check the example. It does. [16:57:00.0000] hm [16:58:00.0000] i'd write "$85.00" and i'd prefer if that "N/A" would be right aligned as well [16:58:01.0000] Hm, I don't understand the use-case for text-align-first. [16:59:00.0000] Okay, then you just use "right" as the value. [16:59:01.0000] yes [17:02:00.0000] text-align-last looks kinda pointless to me... and i don't get text-align-first at all [17:02:01.0000] Aligning the last line of a paragraph differently is relatively common. [17:03:00.0000] i only read technical books (they don't do anything fancy) and stuff on the internet (even less fancy) [17:08:00.0000] white-space-collapsing... weird. tab-size... woo! :> [17:09:00.0000] tab-size is :| evil [17:10:00.0000] yes, tab-size should be always 4 ;) [17:10:01.0000] zewt: Um? [17:10:02.0000] (I spend so much time teaching confused people that tab-size is always 8 in text files and must never, ever be changed) [17:10:03.0000] (and yeah I know HTML != plain text files) [17:10:04.0000] zewt: Why are you teaching people badwrong things? [17:11:00.0000] 99% use 4 though [17:11:01.0000] :> [17:11:02.0000] I use 3. ^_^ [17:11:03.0000] HERETIC! :v [17:11:04.0000] yeah I'll just change the tab stop in my terminal every time I view a file written for broken hard tab widths :P [17:11:05.0000] I just need it as small as possible while still being easy to tell what nesting level I'm on. 2 is too small, 3 isn't. [17:11:06.0000] TabAtkins: that's the common confusion [17:11:07.0000] the width of the tab stop != how far you indent your code [17:12:00.0000] zewt: Um, yes it is. You indent with tabs. Thus, by definition, the size of the tab is how far you indent your code. [17:12:01.0000] people change the former when they mean to change the latter, leading to broken text files in everything else [17:12:02.0000] If you're indenting with spaces, you are badwrong. [17:12:03.0000] i indent with whatever vim feels like indenting with; it doesn't really matter to me [17:12:04.0000] zewt: Then you're part of the problem, most likely. [17:13:00.0000] (unless I'm editing code that uses spaces, in which case I'll :set et for consistency) [17:13:01.0000] Just teach people to use editors that use tabs. [17:13:02.0000] Not stupid broken ones that convert to spaces automatically. [17:13:03.0000] hard tabs are 8 spaces; anything else looks wrong in everything that's not a specially-configured text editor. [17:13:04.0000] Um, what? No, that's nonsense. 8-space tabs are almost always GIGANTONORMOUS. [17:14:00.0000] and the idea of having to reconfigure your environment every time you edit a file authored for a different tab width is, well, a bit insane :P [17:14:01.0000] Again, I have no idea why you're claiming any reconfiguring has to happen? What problem are you talking about? [17:14:02.0000] code written for ts=4 viewed in a ts=8 environment invariably looks completely broken. [17:14:03.0000] the vast majority of people use a tab size of 4 though :> [17:14:04.0000] No, no it doesn't, unless you do it wrong. [17:14:05.0000] 8 is notepad [17:15:00.0000] Where "wrong" = using tabs for alignment as well as indentation. [17:15:01.0000] everything else is 4 by default :> [17:15:02.0000] 8 is *, the only thing I've ever seen that defaults to ts=4 is msvc [17:15:03.0000] aho: have you ever used, err, a terminal? :P [17:15:04.0000] You indent with tabs, and then align with spaces. Simple, obvious rule. [17:15:05.0000] A tab size of 8 is reasonable if you're actually using tabs for tabulation instead of abusing them for indentation. [17:16:00.0000] 4 is way too small for tabulation. [17:16:01.0000] isn't using spaces for indentation even more abuse? [17:16:02.0000] I disagree on that count - *no* static tab length is appropriate for tabulation. [17:16:03.0000] It is if you're just tabulating small numbers, for instance. [17:16:04.0000] You either want tables, or elastic tab stops. [17:16:05.0000] Then 8 is plenty. [17:16:06.0000] Elastic tab stops would be better, yes. [17:17:00.0000] i can't count the number of times I've opened a source file, found myself in a jagged zig zag mess, cursed and had to fiddle with ts values to figure out what the author was using [17:17:01.0000] AryehGregor: Sure, and then the moment you use a string more than 7 characters, your entire table is messed up. [17:17:02.0000] zewt: That's becasue the author was doing it wrong. [17:17:03.0000] I assure you that you can read the files I write in *any* tab-size. [17:17:04.0000] (Well, not 0.) [17:17:05.0000] if you use ts=8, then there's no such thing as "doing it wrong"; no matter how you do it, it'll render correctly. [17:18:00.0000] zewt: Except that "correctly" here actually means "with GIGANTONORMOUS GAPS". [17:18:01.0000] Which is ugly and hard to read. [17:18:02.0000] good luck trying to teach people in varying environments and editors you've never used yourself "put ^I here and spaces here", heh [17:18:03.0000] no, once again, ts != sw [17:18:04.0000] As long as your editor isn't broken (which means inserting spaces when you hit "Tab"), the rule is trivial and easy. [17:18:05.0000] any decent programmer's editor lets you set the number of spaces to indent independently from the tab stop [17:19:00.0000] (sorry for starting this) :I [17:19:01.0000] aho: holy war go! [17:19:02.0000] zewt: How are you distinguishing indentation from tabstops here? They're both created by pressing "Tab". [17:20:00.0000] ... do you know how to use vim? [17:20:01.0000] No, why would I? I use a real text editor. ^_^ [17:20:02.0000] not rising to that bait :P [17:20:03.0000] one holy war at a time [17:20:04.0000] (Note: not emacs) [17:21:00.0000] well, css3-text surely looks a lot more complicated than the last time i looked at it [17:21:01.0000] half of it is giving me a serious headache [17:22:00.0000] hyphenation is somewhat interesting though... finally a use for text-align:justify :> [17:22:01.0000] if I set sw=4 sts=4, pressing tab once inserts 4 spaces; pressing it again replaces it with a tab. it works fine, and renders reliably. [17:23:00.0000] invisible magic [17:23:01.0000] not cool :) [17:23:02.0000] hardly magic [17:23:03.0000] So do you indent with the 4 spaces, or the tab? [17:23:04.0000] and is that a tab or 4 spaces? [17:23:05.0000] i don't have to think about what it's doing; I know it's doing something reasonable and I spend my time thinking about the code I'm writing. heh [17:24:00.0000] If you're not thinking about it, then you're probably writing code that will look bad in my editor. [17:25:00.0000] i'll probably start defaulting to expandtabs (uses only spaces, not tabs), just because it's what most people use in Python [17:25:01.0000] if your editor is set to 4-space tabs, then it's your editor's fault, not my code's. [17:25:02.0000] Yes, it is your fault. Tabs are supposed to be size-agnostic, and treating them as a certain size is harmful. [17:26:00.0000] no, they're not supposed to be size-agnostic. tabs in plain text files are 8 spaces apart. [17:26:01.0000] I have vim set up to do expandtabs for Python only. [17:26:02.0000] No, tabs are a user-configurable number of spaces. [17:26:03.0000] no, tabs are 8 spaces. [17:26:04.0000] Pretending they're always 8 is just silly. [17:26:05.0000] So, dude, we're disagreeing on the most fundamental point here. You're wrong, unfortunately. [17:26:06.0000] Not in my text editor. [17:26:07.0000] I have them set to 4. [17:26:08.0000] (we could bang our heads on this all night; I'm pretty sure we already know where we disagree, so maybe we should move on :) [17:26:09.0000] you mean... some old school text editors use a tab size of 8 by default...yes [17:26:10.0000] MediaWiki's style guidelines officially say they're 4, in MediaWiki code. [17:26:11.0000] but every semi-recent one uses a default of 4 [17:27:00.0000] It is factually incorrect to say that text editors always render tabs as eight spaces. [17:27:01.0000] That is quite demonstrably false. [17:27:02.0000] text editors are only one consumer of text files. again, terminals. [17:27:03.0000] notepad does and uhm... edit.com perhaps [17:27:04.0000] Yes, terminals are always eight spaces. [17:27:05.0000] Also browsers. [17:27:06.0000] And some text editors. [17:27:07.0000] But other text editors are four spaces. [17:27:08.0000] browsers, yes. for legacy reasons :> [17:27:09.0000] So it's not reliable, they can be different sizes. [17:27:10.0000] (well, tab-size, which is how we got on this in the first place, heh) [17:28:00.0000] As TabAtkins says. [17:29:00.0000] text editors that default to anything else have a broken default, probably due to being half-baked editors that can't separate presentation of tabs from the underlying file format. [17:29:01.0000] most people use ts 4 [17:29:02.0000] most people like ts 4 [17:30:00.0000] hence ts 4 is the default [17:30:01.0000] that's how defaults work [17:30:02.0000] if so, then most people don't understand tabs. (which itself doesn't seem like an unlikely case) [17:30:03.0000] zewt: Your statement is inconsistent. You claim that defaulting to anything other than 8 is a broken default, and then claim that this means they can't separate separation from the underlying format. [17:30:04.0000] what? [17:31:00.0000] exactly [17:31:01.0000] The separation of presentation from underlying data is *precisely why* tabs are variable-size. [17:31:02.0000] Just because you think the default in some text editors is broken doesn't mean it's not there. [17:31:03.0000] If an editor inserts spaces when you press Tab, or won't let you change the visual size of tabs, the editor is broken and doing things wrong. [17:31:04.0000] uh, no. any decent text editor lets you press tab and cause a configurable amount of whitespace to appear, regardless of how it's represented in the underlying file. [17:32:00.0000] The correct amount of whitesapce that should appear is "one tab". [17:32:01.0000] On account of that's the key you pressed. [17:32:02.0000] The reality is, your tabs will display in variable widths, and if you aim to accommodate all common ways of viewing your source code instead of deciding you'll ignore many popular text editors, you have to plan for your tabs to be viewed in multiple widths. [17:32:03.0000] At least four and eight spaces. [17:32:04.0000] TabAtkins, not according to, e.g., most Python programmers. [17:32:05.0000] Conventions vary. [17:32:06.0000] AryehGregor: Unfortunately, that PEP is badwrong. ^_^ [17:32:07.0000] Some people prefer spaces for indentation because they display consistently. [17:32:08.0000] Which is a good argument. [17:33:00.0000] But they're more annoying to backspace in a typical editor, that's the major problem I have with them. [17:33:01.0000] the tab key means "insert an amount of space to move the visual column to a multiple of some number". it certainly doesn't have to mean "insert a ^I"; most people don't even know what that means. [17:33:02.0000] No, it's a bad argument, because their code isn't consistent with my code. [17:33:03.0000] (I'm sure I can configure vim somehow to backspace them properly, but I haven't looked into it.) [17:33:04.0000] heh, the thing that I hate about PEP-8 is how it actually tells people to wrap code at 80 columns : | [17:33:05.0000] Where "my code" can be substited for "arbitrary other code that uses a different tab width". [17:34:00.0000] leading to \ [17:34:01.0000] code that \ [17:34:02.0000] looks like \ [17:34:03.0000] this [17:34:04.0000] zewt: People don't have to understand what tabs do. Inserting a tab does exactly what you say. [17:35:00.0000] yes: insert whitespace so the column number is a multiple of some number. [17:35:01.0000] Sigh. Don't pretend like you misunderstood me. [17:36:00.0000] i'm not, i'm pointing out that "what you say" and "what I say" are (evidently) not the same thing [17:36:01.0000] Inserting a tab makes the column number a multiple of the tab width. [17:37:00.0000] but the tab width (8) doesn't have to -- okay let's stop going in circles because we both know the radius of the circle is not going to decrease, heh [17:37:01.0000] This is different from inserting spaces, because the tab width can change, and the start-location of the whitespace (and thus the distance to the next multiple of the tab width) can as well. [17:37:02.0000] Thus, inserting spaces is a broken behavior. [17:38:00.0000] It is in my best interest to convince you of my position, because you are apparently in a position to teach others, and I'd rather read code that is properly indented and aligned in the future. [17:39:00.0000] and I say precisely the same thing to you, and neither seems likely to happen [17:39:01.0000] You are making false statements, though, such as the statement that a tab-size of 8 is the most common and/or correct choice. [17:40:00.0000] you're claiming that your argument is right by saying my argument is wrong; that's not a very compelling case, heh [17:40:01.0000] Why don't you just ignore any prescriptivism and discuss factual questions, like "how can I get my code to display properly in typical editors?" [17:41:00.0000] There's no point in discussing whether tab stops "should" be four or eight spaces. [17:41:01.0000] If that's what I was saying, you'd be right. Luckily, it's not. I'm stating that your argument is wrong for specific reasons based on factual inaccuracies in your justifications. [17:41:02.0000] The reality is, both happen, and if you declare that the many common editors that don't agree with your choice are broken and you don't care about their users, you're a jerk. [17:41:03.0000] so you're denying that terminals universally use 8-space tabs? [17:41:04.0000] Terminals do. [17:41:05.0000] worst tab/spaces war ever [17:42:00.0000] If you're writing something that's only meant for terminal outputs, like ls, then definitely rely on eight-space tabs. [17:42:01.0000] this caramel cappuchino is very delicious by the way [17:42:02.0000] But not if you expect it to be read in a variety of text editors. [17:43:00.0000] conversation successfully killed? yes? :) [17:43:01.0000] aho: Did you bring enough for everyone? [17:43:02.0000] bought lots of it [17:43:03.0000] was a bargain thingy :) [17:43:04.0000] Hand it over, then, or else we're continuing the argument. [17:43:05.0000] 2 bucks instead of 3 [17:43:06.0000] can you get some to me while it's hot? [17:44:00.0000] the hyphenation stuff looks kinda complicated [17:45:00.0000] loading dictionary thingies in a @font-face like fashion looks a bit like overkill [17:45:01.0000] but... it's also an amazingly complicated topic [17:45:02.0000] How often do you need to load hyphenation dictionaries? [17:46:00.0000] how often do they change? [17:46:01.0000] personally i always thought this should be completely offloaded to the browser [17:46:02.0000] i.e. the browser should take care of that dictionary stuff [17:46:03.0000] just like it takes care of dictionaries for spellchecking [17:46:04.0000] That doesn't help with technical information, for example. [17:47:00.0000] Spellchecking is a user issue that should be consistent across the browser. Hyphenation is a display issue for the specific site. [17:47:01.0000] That said, I believe browsers are allowed to be smart with default hyphenation, it's just that nobody does it. [17:48:00.0000] well, there are common words [17:48:01.0000] like 100k per language [17:48:02.0000] (This could be accomplished through hyphenation dicts specified in the UA stylesheet, of course.) [17:48:03.0000] no need to define how those should be hyphenated over and over again [17:48:04.0000] yes, some default dictionary... and you can augment that with your own [17:48:05.0000] e.g. you use 50 unusal words and you want those hyphenated, too [17:49:00.0000] Ooh, I think I might finally be ready to publish an ED of flexbox. [17:49:01.0000] Let's generate and see. [17:49:02.0000] woo! flexbox! :D [18:04:00.0000] Damn my colorblindness! I can only barely see issues inside of notes, given the default stylesheet. [18:07:00.0000] Aw yeah: http://dev.w3.org/csswg/css3-flexbox/ [22:49:00.0000] wait what [22:49:01.0000] the link relation "up" will be removed from HTML? [22:49:02.0000] has the point arrived where I should just nuke most rel attribute usage on my site? [22:56:00.0000] AryehGregor, interesting idea; making ProcessingInstruction a CharacterData type [22:56:01.0000] AryehGregor, should it inherit from Comment, even? [23:11:00.0000] annevk: you can always register "up" in your registry of choice [23:12:00.0000] I wish the situation was a bit more clear than "do whatever you want" and it "depends on who you ask what it means" [23:14:00.0000] At this point it sure seems that the only link relationships I still want to use are those with some tangible benefit. E.g. "stylesheet", "alternate" in combination with type=application/atom+xml, maybe "noreferrer", "nofollow"... [23:15:00.0000] I do think that in general, it's good to use things in your markup if they have a tangible benefit [23:15:01.0000] So why did we keep rel=author? [23:16:00.0000] Most relationships make it easier to understand the structure of a site I suppose. But that includes last/first/up/... [23:17:00.0000] no one made that particular argument against removing them - the focus seemed to be on the very few user agents that expose last/first/up in UI, and on what link types exactly are used by various CMS systems in their templates [23:18:00.0000] next/previous are not exactly common either [23:18:01.0000] or rel=search [23:19:00.0000] oh well, I'm gonna assume that we'll revisit this in a couple of years [23:19:01.0000] othermaciej, btw, I wrote up http://dvcs.w3.org/hg/from-origin/raw-file/tip/Overview.html [23:20:00.0000] I guess I'll write an email to public-webapps about it now [23:22:00.0000] annevk: sweet [23:22:01.0000] I'm somewhat surprised the allowing cross-origin embedding of fonts is dangerous for security argument is still floating around [23:23:00.0000] is it? [23:23:01.0000] I thought I managed to kill that [23:23:02.0000] you did, but that it was raised at all [23:23:03.0000] I explained to everyone on that one telecon that same-origin policy is not a defense against code execution attacks from malware… [23:23:04.0000] because it was used a year ago too and I said pretty much the same thing you did [23:24:00.0000] cargo cult security is apparently a powerful meme [23:30:00.0000] Hixie, about http://www.w3.org/Bugs/Public/show_bug.cgi?id=11984 do you plan to investigate further what Microsoft/Mozilla are actually willing to implement, or should I turn it into an ISSUE? [23:31:00.0000] i left the bug open to work out if there was anything we could do [23:31:01.0000] but i'm happy for you to try to solve it for me :-) [23:32:00.0000] ugh, I may be a bit too partial to come up with an honest suggestion :) [23:32:01.0000] but if you *do* want me to make an ISSUE, you need to close some bug that I disagree with I guess. right, othermaciej? [23:32:02.0000] othermaciej, http://lists.w3.org/Archives/Public/public-webapps/2011JanMar/0710.html [23:32:03.0000] foolip: yes, it needs to be resolved to be escalated [23:33:00.0000] othermaciej, might help if you weigh in, however brief [23:33:01.0000] foolip: as far as I am concerned, I think it is fine for Hixie to either WONTFIX it, or to take another crack at a mutually agreeable resolution [23:33:02.0000] othermaciej: you can try to come up with a resultion without using the wg issue process [23:33:03.0000] er [23:33:04.0000] s/othermaciej/foolip/ [23:34:00.0000] I don't know how to communicate with Microsoft, so in that case I'd prefer for Hixie to try once more... [23:34:01.0000] i have never successfully managed to communicate with microsoft [23:34:02.0000] Hixie, how did you manage to get the statement that I cited in my original CP then? [23:35:00.0000] i mailed them about this very issue months ago and they said that obeying Content-Type was the most stupid thing ever [23:35:01.0000] foolip: in the case of this bug, you could contact Adrian Bateman directly [23:35:02.0000] foolip: what statement? [23:35:03.0000] foolip: in general, if Microsoft people fail to reply on something HTML WG related, I have found that asking Paul Cotton often results in a response from somebody over there [23:36:00.0000] Hixie, "Microsoft's position is, as far as I can tell, that there's no point looking at the Content-Type header" [23:36:01.0000] ah, yeah, that was what they told me [23:36:02.0000] they then implemented the exact opposite of that, apparently [23:36:03.0000] so like i said [23:36:04.0000] i have never successfully managed to communicate with microsoft [23:36:05.0000] ok, true :) [23:37:00.0000] given how much it would help microsoft for me to be able to make the spec match what they want, you'd think they'd be more communicative [23:38:00.0000] haha [23:38:01.0000] you must be new here [23:53:00.0000] Hixie, ok, I made a naive attempt at friendly dialog [23:59:00.0000] othermaciej, I guess abarth would have to explain the CSP angle [00:04:00.0000] the CSP angle of? /me is missing context [00:05:00.0000] see latest in public-webapps [00:05:01.0000] sorry [00:07:00.0000] ah, i see [00:07:01.0000] sure [00:13:00.0000] it does vaguely fit with the CSP theme of denying actions that are normally allowed [00:13:01.0000] but other than that, I don't get it [00:16:00.0000] i'm writing up a reply for the mailing list [00:16:01.0000] its a lot like frame-ancestors [00:17:00.0000] aside from the aesthetic questions [00:17:01.0000] From-Origin is probably going to want to designate a list of origins that can embed the resource [00:17:02.0000] which is something CSP has syntax for [00:20:00.0000] it does allow a list of origins atm [00:20:01.0000] that's what # means [00:20:02.0000] subtle, but true :) [00:20:03.0000] what about wildcarding? [00:20:04.0000] but it does not allow the wild card matching of CSP [00:21:00.0000] so, that's similar, but slightly different than CSP [00:21:01.0000] which seems like a loss in terms of extra complexity [00:22:00.0000] I modeled it after CORS [00:22:01.0000] can you have a list of Origins in CORS? [00:22:02.0000] not yet [00:23:00.0000] but it can be quite easily added in the future [00:23:01.0000] its entirely likely the best solution here is to decide that a Content-Security-Policy header doesn't make sense [00:23:02.0000] and it would follow the design of From-Origin [00:23:03.0000] and instead we should have separate headers for the different CSP use cases [00:23:04.0000] hey I don't know either :) [00:23:05.0000] just trying to defend my design decisions :) [00:24:00.0000] abarth, that does sound better [00:24:01.0000] less and , more ,