#!/usr/bin/perl use strict; use CGI::Carp qw(fatalsToBrowser); my $data_dir_name = q[data/]; my $path = $ENV{PATH_INFO}; sub htescape ($) { my $s = shift; $s =~ s/&/&/g; $s =~ s/; } print qq[Content-Type: text/html; charset=utf-8 Edit — @{[htescape ($name)]}

Edit — @{[htescape ($name)]}

Important: See license.

]; exit; } elsif ($ENV{REQUEST_METHOD} eq 'POST') { eval q{ use CGI qw(param) }; my $data = param ('data'); open my $file, '>', $file_name or die "$0: $file_name: $!"; print $file $data; close $file; my $user = $ENV{REMOTE_USER}; $user =~ s/[^0-9A-Za-z_-]/_/g; (system "cvs commit -m \"by remote user \'$user\'\" data > /dev/null") == 0 or die "$0: $?"; print q[Status: 204 Saved; No Content]; exit; } else { print q[Status: 405 Method Not Allowed Content-Type: text/plain ; charset=us-ascii Allow: GET, POST 405]; exit; } } } elsif ($path eq '/') { opendir my $data_dir, $data_dir_name or die "$0: $data_dir_name: $!"; print q[Content-Type: text/html; charset=utf-8 English-Japanese Data Files

English-Japanese Data Files

Tools

Status of translation

See progress graph.

License of data files

Texts from HTML5 and Web Workers specs:

For contributors: You have to agree that your contributions are licensed under the terms quoted above.

]; exit; } elsif ($path eq '/para/add') { if ($ENV{REQUEST_METHOD} eq 'POST') { eval q{ use CGI qw(param) }; my $data_file_name = param ('data-file'); $data_file_name =~ s/[^A-Za-z0-9_-]/_/g; $data_file_name .= '.dat'; $data_file_name = $data_dir_name . $data_file_name; if (-f $data_file_name) { my $entry = ''; if (param ('pattern')) { $entry .= "#pattern\n"; } else { $entry .= "#en\n"; } my $en = param ('original-text'); $en =~ s/^\s+//; $en =~ s/\x+\z//; $en =~ s/\x0D?\x0A(?:\x0D?\x0A)+/\n/g; $entry .= $en; $entry .= "\n#ja\n"; my $ja = param ('translated-text'); $ja =~ s/^\s+//; $ja =~ s/\x+\z//; $ja =~ s/\x0D?\x0A(?:\x0D?\x0A)+/\n/g; $entry .= $ja; # utf8 open my $data_file, '>>', $data_file_name or die "$0: $data_file_name: $!"; print $data_file "\n\n"; print $data_file $entry; close $data_file; my $user = $ENV{REMOTE_USER}; $user =~ s/[^0-9A-Za-z_-]/_/g; (system "cvs commit -m \"by remote user \'$user\'\" data > /dev/null") == 0 or die "$0: $?"; print q[Status: 204 Saved; No Content ]; exit; } } else { print q[Content-Type: text/html ; charset=utf-8 Add paragraph

Add paragraph


()

to

Important: See license.

]; exit; } } print q[Content-Type: text/plain ; charset=us-ascii Status: 404 Not Found 404];