> the entire server occasionally breaks
Occasionally?
Well, that might be it, except that on world4ch at least one board breaks every week, if not more. Incidentally, as of this writing, 4chan's /dis/ and /sug/ are also toast (third time this month?).
As it is, I can't recall ever seeing kareha break.
> They can modify it an claim copyright on their modifications, at least as long as they're significant enough, but that doesn't affect existing works in the public domain.
Devil's advocate: What if they make significant changes you would want to add yourself? before you do? Can they then tell you to stop if they license their work first?
> It would eliminate the concept of sageing as a protest entirely.
Except that nobody knows what's going on back-end.
I like the idea though.
Wow, >>243 sure looks like shit in Safari. What the hell? Looks right in Firefox, though.
> (albeit edge cases)
Which is the crux of the matter - it mostly doesn't matter to the vast majority of users.
> You still end up with no way to link the fusianasan post with the name/trip one without IDs enabled (unless the ID method is known and no secret data is used).
You can use fusianasan with a tripcode, at least on Kareha. I suspect you can on 0ch too, but I haven't checked.
>>184
If people are going to decide to use custom names for paramaters, then there isn't much you can do about it anyway, or is there?
> Also, I'd like to ask exactly how Kareha does automatically generates deletion passwords. I'm guessing it's similar if not identical to how it creates ID session codes with a user's IP.
Actually, no, the Javascript just strings some random numbers and letters together.
> Because it's one of the two requirements for creating a new thread, and it's a lot more important to have a well-defined topic than to fill in your name.
But the body text is even more important, and that goes at the bottom. So I dunno.
>It's more convenient if you want to start a new thread, but for those who don't it's one more form to have to scroll by.
Would it maybe make sense to make a separate thread creation page?
That's a Firefox bug.
How come this is now the by far biggest thread on this board?
Maybe it's because I'm posting useless replies like this one!
>>196
Actually, a solution to >> links with static pages is to simply make them reference a certain point on a certain page number for that thread (ie, http://wakaba.c3.cx/sup/1129153864/index2.html#197).
What does "fusianasan" mean?
∧∧
( ・ω・) It's late
_| ⊃/(___
/ └-(____/
∧∧
( ・ω・ ) Good night!
_| ⊃/(___
/ └-(____/
<⌒/ヽ-、___
/<_/____/
 ̄ ̄
I think it'd be a better idea to have some kind of load-balancing/distributed server cluster approach, like what dmpk2k was working on for Wakaba.
> (albeit edge cases)
Which is the crux of the matter - it mostly doesn't matter to the vast majority of users.
> You still end up with no way to link the fusianasan post with the name/trip one without IDs enabled (unless the ID method is known and no secret data is used).
You can use fusianasan with a tripcode, at least on Kareha. I suspect you can on 0ch too, but I haven't checked.
>>108
fusianasan is a voluntary function to show identity without having to memorize a tripcode. Works on all boards. Reveals your IP, of course...
Another feature I'd like is keyboard shortcuts like Wikipedia. Although you'd have to avoid stuff like Alt-D.
Weird, ¦ now stays ¦.
Testing #¦ now.
fusianasan + sage test
If you want to have a look at what the code actually does to dig out flaws, here is the current version:
sub sanitize_html($%)
{
my ($html,%tags)=@_;
my (@stack,$clean);
my $entity_re=qr/&(?!\#[0-9]+;|\#x[0-9a-fA-F]+;|amp;)/;
while($html=~/(?:([^<]+)|<([^<>]*)>?)/g)
{
my ($text,$tag)=($1,$2);
if($text)
{
$text=~s/$entity_re/&/g;
$text=~s/>/>/g;
$clean.=$text;
}
else
{
if($tag=~m!^\s*(/?)\s*([a-z0-9_:\-\.]+)(?:\s+(.*?)|)\s*(/?)\s*$!si)
{
my ($closing,$name,$args,$implicit)=($1,lc($2),$3,$4);
if($tags{$name})
{
if($closing)
{
if(grep { $_ eq $name } @stack)
{
my $entry;
do {
$entry=pop @stack;
$clean.="</$entry>";
} until $entry eq $name;
}
}
else
{
my %args;
$args=~s/\s/ /sg;
while($args=~/([a-z0-9_:\-\.]+)(?:\s*=\s*(?:'([^']*?)'|"([^"]*?)"|['"]?([^'" ]*))|)/gi)
{
my ($arg,$value)=(lc($1),defined($2)?$2:defined($3)?$3:$4);
$value=$arg unless defined($value);
my $type=$tags{$name}{args}{$arg};
if($type)
{
my $passes=1;
if($type=~/url/i) { $passes=0 unless $value=~/(?:^$protocol_re:|^[^:]+$)/ }
if($type=~/number/i) { $passes=0 unless $value=~/^[0-9]+$/ }
if($passes)
{
$value=~s/$entity_re/&/g;
if($value=~/"/) { $value="'$value'" }
else { $value="\"$value\"" }
$args{$arg}=$value;
}
}
}
my $cleanargs=join " ",map { "$_=$args{$_}" } keys %args;
$implicit="/" if($tags{$name}{empty});
push @stack,$name unless $implicit;
$clean.="<$name";
$clean.=" $cleanargs" if $cleanargs;
$clean.=" $implicit" if $implicit;
$clean.=">";
}
}
}
}
}
my $entry;
while($entry=pop @stack) { $clean.="</$entry>" }
return $clean;
}>>333
The whole point of websites is to implement things without the external application. I don't understand the argument for OH NO ANOTHER BUTTON MY WHOLE LIFE IS RUINNED crowd. If you don't like the extra buttons why don't you remove them with an external application and/or preferences? When you are talking about formating options, a preview makes sense. Are you going to set up your thrid-party application for every configuration of tags supported for every board?
If a feature is of a wide enough audience, it should be included. I'm sure nearly everyone could use a preview every once in a while, whereas something like a Bible quotation functionality would not have wide use.
> Wait, why should l50 links be indexed/cached?
Because the only way for the search engine to find the old threads is to go through the l50 links. I'm taking the advice of >>322 though.
> The CSS in the All threads page is unsightly. Is there a way to properly wrap the outer color border(s) around the table of threads?
You need to explain what you're talking about before I can do anything about that. What style, and what does "wrap the outer color border(s) around" mean?
> I still say that the "Navigation: " text is extraneous when people can clearly see what the links do. Also still partitioning for 0ch-style error pages (with displayed user host and all).
It's there because freefloating unlabelled links look weird.
> Now that we do have filesize indicators in the backlog page of mode_message, do you still find it useless to have the red bold filesizes near the bottom of thread subpages?
They're there, but only if you enable pruning by size.
> Does mode_message now work in PAGE_GENERATION => 'paged'?
No. I'm too lazy to figure what that's supposed to do, and I don't think anybody actually wants to use that in the first place.
> Idea: forced anonymous/sage/ID/fusianasan by IP/thread/board/whole site (some of these combinations already exist, I know)?
There's no database to keep IP data in, and I'd prefer to keep the script completely agnostic to IP addresses.
> Finally, I imagine that the permasage/close/delete functions in kareha.pl will be easily interchangeable among the conditions in post_stuff(). Can you confirm this?
No, because I don't know what you mean.
> It's not worth comparing until it doesn't break regularly.
The only problem with it is that it doesn't do paranoid file writes. The fact that the entire server occasionally breaks isn't related to how broken the script itself is.
I've been meaning to change some of the defaults away from Futaba-style to saner behaviours. Any suggestions for what to change are welcome. So far: