Mercurial > hg > nginx-vendor-0-8
annotate contrib/unicode2nginx/unicode-to-nginx.pl @ 430:dac47e9ef0d5 NGINX_0_7_27
nginx 0.7.27
*) Feature: the "try_files" directive.
*) Feature: variables support in the "fastcgi_pass" directive.
*) Feature: now the $geo variable may get an address from a
variable.
Thanks to Andrei Nigmatulin.
*) Feature: now a location's modifier may be used without space before
name.
*) Feature: the $upstream_response_length variable.
*) Bugfix: now a "add_header" directive does not add an empty value.
*) Bugfix: if zero length static file was requested, then nginx just
closed connection; the bug had appeared in 0.7.25.
*) Bugfix: a MOVE method could not move file in non-existent directory.
*) Bugfix: a segmentation fault occurred in worker process, if no one
named location was defined in server, but some one was used in an
error_page directive.
Thanks to Sergey Bochenkov.
author | Igor Sysoev <http://sysoev.ru> |
---|---|
date | Mon, 15 Dec 2008 00:00:00 +0300 |
parents | fa32d59d9a15 |
children |
rev | line source |
---|---|
216 | 1 #!/usr/bin/perl -w |
2 | |
3 # Convert unicode mappings to nginx configuration file format. | |
4 | |
5 # You may find useful mappings in various places, including | |
6 # unicode.org official site: | |
7 # | |
8 # http://www.unicode.org/Public/MAPPINGS/VENDORS/MICSFT/WINDOWS/CP1251.TXT | |
9 # http://www.unicode.org/Public/MAPPINGS/VENDORS/MISC/KOI8-R.TXT | |
10 | |
11 # Needs perl 5.6 or later. | |
12 | |
13 # Written by Maxim Dounin, mdounin@rambler-co.ru | |
14 | |
15 ############################################################################### | |
16 | |
17 require 5.006; | |
18 | |
19 while (<>) { | |
20 # Skip comments and empty lines | |
21 | |
22 next if /^#/; | |
23 next if /^\s*$/; | |
24 chomp; | |
25 | |
26 # Convert mappings | |
27 | |
28 if (/^\s*0x(..)\s*0x(....)\s*(#.*)/) { | |
29 # Mapping <from-code> <unicode-code> "#" <unicode-name> | |
30 my $cs_code = $1; | |
31 my $un_code = $2; | |
32 my $un_name = $3; | |
33 | |
34 # Produce UTF-8 sequence from character code; | |
35 | |
36 my $un_utf8 = join('', map { sprintf("%02X", $_) } unpack("C*", pack("U", hex($un_code)))); | |
37 | |
38 print " $cs_code $un_utf8 ; $un_name\n"; | |
39 | |
40 } else { | |
41 warn "Unrecognized line: '$_'"; | |
42 } | |
43 } | |
44 | |
45 ############################################################################### |