• R/O
  • SSH
  • HTTPS

ttssh2: Commit


Commit MetaInfo

Revision9189 (tree)
Time2021-02-28 17:31:48
Authorzmatsuo

Log Message

Merge branch 'move_code_script' into trunk

Change Summary

Incremental Difference

--- trunk/installer/conv.pl (revision 9188)
+++ trunk/installer/conv.pl (nonexistent)
@@ -1,34 +0,0 @@
1-
2-#
3-# Unicodeをキーとして昇順にソートする
4-#
5-
6-$file = 'SHIFTJIS_TXT.htm';
7-
8-&read_mapfile($file);
9-exit();
10-
11-sub read_mapfile {
12- my($file) = @_;
13- my(%table, $val, $key);
14-
15- open(FP, $file) || die "error";
16- while ($line = <FP>) {
17- if ($line =~ /^\#/) {next;}
18- if ($line =~ m+^\/+) {next;}
19- if ($line =~ m+^\<+) {next;}
20- $line =~ s/^\s+//;
21- @column = split(/\s+/, $line);
22-
23- $val = int(hex($column[1])); # Unicode
24-# print "$column[0] -> $column[1] ($val)\n";
25- $table{$val} = hex($column[0]);
26-# printf "%d => %x\n", $val, $table{$val};
27- }
28- close(FP);
29-
30- foreach $key (sort {$a <=> $b} keys %table) {
31- printf " { 0x%04X, 0x%04X },\n", $key, $table{$key};
32- }
33-}
34-
--- trunk/installer/hfs_conv.pl (revision 9188)
+++ trunk/installer/hfs_conv.pl (nonexistent)
@@ -1,83 +0,0 @@
1-#
2-# Unicodeをキーとして昇順にソートする
3-#
4-# >perl hfs_conv.pl > hfs_plus.map
5-
6-$file = 'UNICODE DECOMPOSITION TABLE.htm';
7-
8-print <<EOD;
9-typedef struct hfsplus_codemap {
10- unsigned short illegal_code;
11- unsigned short first_code;
12- unsigned short second_code;
13-} hfsplus_codemap_t;
14-
15-/*
16- * cf. http://developer.apple.com/technotes/tn/tn1150table.html
17- *
18- */
19-static hfsplus_codemap_t mapHFSPlusUnicode[] = {
20-EOD
21-
22-&read_mapfile($file);
23-
24-print <<EOD;
25-};
26-EOD
27-
28-exit();
29-
30-sub read_mapfile {
31- my($file) = @_;
32- my(%table, $val, $key);
33-
34- $illegal = '';
35- $first = '';
36- $second = '';
37-
38- open(FP, $file) || die "error";
39- while ($line = <FP>) {
40-# print "$line\n";
41- if ($line =~ m|<P>0x(....)</P>|) {
42- $illegal = hex($1);
43- }
44- if ($line =~ m|<P>0x(....) 0x(....)</P>|) {
45- $first = hex($1);
46- $second = hex($2);
47-
48- push(@key, "$illegal,$first,$second");
49-
50- # printf " {0x%04X, 0x%04X, 0x%04X},\n", $illegal, $first, $second;
51- }
52- }
53- close(FP);
54-
55- # $firstをキーとしてソートする
56- $k = @key - 1;
57- while ($k >= 0) {
58- $j = -1;
59- for ($i = 1; $i <= $k; $i++) {
60- @m = split(/,/, $key[$i-1]);
61- @n = split(/,/, $key[$i]);
62- if ($m[1] > $n[1]) {
63- $j = $i - 1;
64- $t = $key[$j];
65- $key[$j] = $key[$i];
66- $key[$i] = $t;
67- }
68- }
69- $k = $j;
70- }
71-
72- foreach $s (@key) {
73- @n = split(/,/, $s);
74- printf " {0x%04X, 0x%04X, 0x%04X},\n", $n[0], $n[1], $n[2];
75- }
76-
77-# foreach $key (sort {$a <=> $b} keys %table) {
78-# @n = split(/,/, $table{$key});
79-# printf " {0x%04X, 0x%04X, 0x%04X},\n", $n[0], $key, $n[1];
80-# }
81-
82-}
83-
--- trunk/installer/rev_conv.pl (revision 9188)
+++ trunk/installer/rev_conv.pl (nonexistent)
@@ -1,34 +0,0 @@
1-
2-#
3-# Shift_JISをキーとして昇順に出力する
4-#
5-
6-$file = 'SHIFTJIS_TXT.htm';
7-
8-&read_mapfile($file);
9-exit();
10-
11-sub read_mapfile {
12- my($file) = @_;
13- my(%table, $val, $key);
14-
15- open(FP, $file) || die "error";
16- while ($line = <FP>) {
17- if ($line =~ /^\#/) {next;}
18- if ($line =~ m+^\/+) {next;}
19- if ($line =~ m+^\<+) {next;}
20- $line =~ s/^\s+//;
21- @column = split(/\s+/, $line);
22-
23- $val = int(hex($column[0])); # Unicode
24-# print "$column[0] -> $column[1] ($val)\n";
25- $table{$val} = hex($column[1]);
26-# printf "%d => %x\n", $val, $table{$val};
27- }
28- close(FP);
29-
30- foreach $key (sort {$a <=> $b} keys %table) {
31- printf " { 0x%04X, 0x%04X },\n", $key, $table{$key};
32- }
33-}
34-
--- trunk/teraterm/teraterm/unicode/conv_combining.md (nonexistent)
+++ trunk/teraterm/teraterm/unicode/conv_combining.md (revision 9189)
@@ -0,0 +1,28 @@
1+# conv_combining.pl について
2+
3+- hfs_plus.map (現在は uni_combining.map) を出力するために作成された
4+- conv_combining.pl の前は installer/conv_hfs.pl だった
5+- uni_combining.map は直接人手で修正している
6+ - https://ja.osdn.net/cvs/view/ttssh2/teraterm/source/teraterm/hfs_plus.map?hideattic=0&view=log
7+ - https://ja.osdn.net/projects/ttssh2/svn/view/trunk/teraterm/teraterm/uni_combining.map?root=ttssh2&view=log
8+ - r6514 にて hfs_plus.map -> uni_combining.map
9+- 現在はこのスクリプトの出力をそのまま使用していない
10+
11+## 入力ファイル
12+
13+- 現在の入手先
14+ - https://developer.apple.com/library/archive/technotes/tn/tn1150table.html
15+
16+- 以前
17+ - スクリプト作成当時
18+ - UNICODE DECOMPOSITION TABLE.htm
19+ - 移動
20+ - http://developer.apple.com/technotes/tn/tn1150table.html
21+
22+## 使い方
23+
24+```
25+wget https://developer.apple.com/library/archive/technotes/tn/tn1150table.html
26+mv tn1150table.html "UNICODE DECOMPOSITION TABLE.htm"
27+perl conv_combining.pl > uni_combining.map
28+```
--- trunk/teraterm/teraterm/unicode/conv_combining.pl (nonexistent)
+++ trunk/teraterm/teraterm/unicode/conv_combining.pl (revision 9189)
@@ -0,0 +1,83 @@
1+#
2+# Unicodeをキーとして昇順にソートする
3+#
4+# >perl hfs_conv.pl > hfs_plus.map
5+
6+$file = 'UNICODE DECOMPOSITION TABLE.htm';
7+
8+print <<EOD;
9+typedef struct hfsplus_codemap {
10+ unsigned short illegal_code;
11+ unsigned short first_code;
12+ unsigned short second_code;
13+} hfsplus_codemap_t;
14+
15+/*
16+ * cf. http://developer.apple.com/technotes/tn/tn1150table.html
17+ *
18+ */
19+static hfsplus_codemap_t mapHFSPlusUnicode[] = {
20+EOD
21+
22+&read_mapfile($file);
23+
24+print <<EOD;
25+};
26+EOD
27+
28+exit();
29+
30+sub read_mapfile {
31+ my($file) = @_;
32+ my(%table, $val, $key);
33+
34+ $illegal = '';
35+ $first = '';
36+ $second = '';
37+
38+ open(FP, $file) || die "error";
39+ while ($line = <FP>) {
40+# print "$line\n";
41+ if ($line =~ m|<P>0x(....)</p>|) {
42+ $illegal = hex($1);
43+ }
44+ if ($line =~ m|<P>0x(....) 0x(....)</p>|) {
45+ $first = hex($1);
46+ $second = hex($2);
47+
48+ push(@key, "$illegal,$first,$second");
49+
50+ # printf " {0x%04X, 0x%04X, 0x%04X},\n", $illegal, $first, $second;
51+ }
52+ }
53+ close(FP);
54+
55+ # $firstをキーとしてソートする
56+ $k = @key - 1;
57+ while ($k >= 0) {
58+ $j = -1;
59+ for ($i = 1; $i <= $k; $i++) {
60+ @m = split(/,/, $key[$i-1]);
61+ @n = split(/,/, $key[$i]);
62+ if ($m[1] > $n[1]) {
63+ $j = $i - 1;
64+ $t = $key[$j];
65+ $key[$j] = $key[$i];
66+ $key[$i] = $t;
67+ }
68+ }
69+ $k = $j;
70+ }
71+
72+ foreach $s (@key) {
73+ @n = split(/,/, $s);
74+ printf " {0x%04X, 0x%04X, 0x%04X},\n", $n[0], $n[1], $n[2];
75+ }
76+
77+# foreach $key (sort {$a <=> $b} keys %table) {
78+# @n = split(/,/, $table{$key});
79+# printf " {0x%04X, 0x%04X, 0x%04X},\n", $n[0], $key, $n[1];
80+# }
81+
82+}
83+
--- trunk/teraterm/teraterm/unicode/conv_sjis.md (nonexistent)
+++ trunk/teraterm/teraterm/unicode/conv_sjis.md (revision 9189)
@@ -0,0 +1,22 @@
1+# conv_sjis.pl について
2+
3+- uni2sjis.map を作るために作成された
4+- conv_sjis.pl の前は installer/conv.pl だった
5+- uni2sjis.map は直接人手で修正している
6+ - https://ja.osdn.net/cvs/view/ttssh2/teraterm/source/teraterm/uni2sjis.map?hideattic=0&view=log
7+ - https://ja.osdn.net/projects/ttssh2/svn/view/trunk/teraterm/teraterm/uni2sjis.map?root=ttssh2&view=log
8+- 現在はこのスクリプトの出力をそのまま使用していない
9+
10+## 入力ファイル
11+
12+- 最新はこれか?
13+ - ftp://ftp.unicode.org/Public/MAPPINGS/OBSOLETE/EASTASIA/JIS/SHIFTJIS.TXT
14+- 作成当時
15+ - SHIFTJIS_TXT.htm
16+
17+## 使い方
18+
19+```
20+wget ftp://ftp.unicode.org/Public/MAPPINGS/OBSOLETE/EASTASIA/JIS/SHIFTJIS.TXT
21+perl conv_sjis.pl > uni2sjis.map
22+```
--- trunk/teraterm/teraterm/unicode/conv_sjis.pl (nonexistent)
+++ trunk/teraterm/teraterm/unicode/conv_sjis.pl (revision 9189)
@@ -0,0 +1,34 @@
1+
2+#
3+# Unicodeをキーとして昇順にソートする
4+#
5+
6+$file = 'SHIFTJIS.TXT';
7+
8+&read_mapfile($file);
9+exit();
10+
11+sub read_mapfile {
12+ my($file) = @_;
13+ my(%table, $val, $key);
14+
15+ open(FP, $file) || die "error";
16+ while ($line = <FP>) {
17+ if ($line =~ /^\#/) {next;}
18+ if ($line =~ m+^\/+) {next;}
19+ if ($line =~ m+^\<+) {next;}
20+ $line =~ s/^\s+//;
21+ @column = split(/\s+/, $line);
22+
23+ $val = int(hex($column[1])); # Unicode
24+# print "$column[0] -> $column[1] ($val)\n";
25+ $table{$val} = hex($column[0]);
26+# printf "%d => %x\n", $val, $table{$val};
27+ }
28+ close(FP);
29+
30+ foreach $key (sort {$a <=> $b} keys %table) {
31+ printf " { 0x%04X, 0x%04X },\n", $key, $table{$key};
32+ }
33+}
34+
--- trunk/teraterm/teraterm/unicode/conv_uni.md (nonexistent)
+++ trunk/teraterm/teraterm/unicode/conv_uni.md (revision 9189)
@@ -0,0 +1,19 @@
1+# conv_uni.pl について
2+
3+- sjis2uni.map を作るために作成されたと思われる
4+- conv_uni.pl の前は installer/rev_conv.pl だった
5+- sjis2uni.map はソースツリーに存在しないし、使用されていない
6+
7+## 入力ファイル
8+
9+- 最新はこれか?
10+ - ftp://ftp.unicode.org/Public/MAPPINGS/OBSOLETE/EASTASIA/JIS/SHIFTJIS.TXT
11+- 作成当時
12+ - SHIFTJIS_TXT.htm
13+
14+## 使い方
15+
16+```
17+wget ftp://ftp.unicode.org/Public/MAPPINGS/OBSOLETE/EASTASIA/JIS/SHIFTJIS.TXT
18+perl conv_uni.pl > sjis2uni.map
19+```
--- trunk/teraterm/teraterm/unicode/conv_uni.pl (nonexistent)
+++ trunk/teraterm/teraterm/unicode/conv_uni.pl (revision 9189)
@@ -0,0 +1,34 @@
1+
2+#
3+# Shift_JISをキーとして昇順に出力する
4+#
5+
6+$file = 'SHIFTJIS_TXT.htm';
7+
8+&read_mapfile($file);
9+exit();
10+
11+sub read_mapfile {
12+ my($file) = @_;
13+ my(%table, $val, $key);
14+
15+ open(FP, $file) || die "error";
16+ while ($line = <FP>) {
17+ if ($line =~ /^\#/) {next;}
18+ if ($line =~ m+^\/+) {next;}
19+ if ($line =~ m+^\<+) {next;}
20+ $line =~ s/^\s+//;
21+ @column = split(/\s+/, $line);
22+
23+ $val = int(hex($column[0])); # Unicode
24+# print "$column[0] -> $column[1] ($val)\n";
25+ $table{$val} = hex($column[1]);
26+# printf "%d => %x\n", $val, $table{$val};
27+ }
28+ close(FP);
29+
30+ foreach $key (sort {$a <=> $b} keys %table) {
31+ printf " { 0x%04X, 0x%04X },\n", $key, $table{$key};
32+ }
33+}
34+
--- trunk/teraterm/teraterm/unicode/readme.md (nonexistent)
+++ trunk/teraterm/teraterm/unicode/readme.md (revision 9189)
@@ -0,0 +1,45 @@
1+# 文字コード関連のマップファイル,スクリプトファイルについて
2+
3+## [uni_combining.map](../uni_combining.map)
4+
5+- NFDで分解されている文字を結合するために使用
6+```
7+ // WideCharToMultiByte() では結合処理は行われない
8+ // 自力で結合処理を行う。ただし、最初の2文字だけ
9+ // 例1:
10+ // U+307B(ほ) + U+309A(゜) は
11+ // Shift jis の 0x82d9(ほ) と 0x814b(゜) に変換され
12+ // 0x82db(ぽ) には変換されない
13+ // 予め U+307D(ぽ)に正規化しておく
14+```
15+- [conv_combining.md](conv_combining.md)
16+
17+## [uni2sjis.map](../uni2sjis.map)
18+
19+- UnicodeからShift JISに変換するために使用
20+- [conv_sjis.md](conv_sjis.md)
21+
22+## sjis2uni.map はソースツリーに存在しない
23+
24+- Shift JISからUnicodeからに変換できると思われるが、使用されていない
25+- [conv_uni.md](conv_uni.md)
26+
27+## [unisym2decsp.map](../unisym2decsp.map)
28+
29+- UnicodeからDEC special文字コードに変換するために使用
30+
31+## [unicode_asian_width.tbl](../unicode_asian_width.tbl)
32+
33+- East Asian Width 特性テーブル
34+ - [東アジアの文字幅(wikiepdia)](https://ja.wikipedia.org/wiki/%E6%9D%B1%E3%82%A2%E3%82%B8%E3%82%A2%E3%81%AE%E6%96%87%E5%AD%97%E5%B9%85)参照
35+- [get_f_w_a.md](get_f_w_a.md)
36+
37+## [unicode_combine.tbl](../unicode_combine.tbl)
38+
39+- combine (結合)文字かどうかを調べるテーブル
40+- [get_combine_table.md](get_combine_table.md)
41+
42+## [unicode_emoji.tbl](../unicode_emoji.tbl)
43+
44+- 絵文字判定のためのテーブル
45+- [get_emoji_table.md](get_emoji_table.md)
Show on old repository browser