約 2,831,001 件
https://w.atwiki.jp/haishinbot/pages/31.html
プロフィール BOT名 ABOKADO-chan ふりがな あぼかどちゃん パートナー 丫戊个堂 年齢 ??歳 身長 ??cm 体重 ??kg B-W-H ??-??-?? カップ ? 誕生日 ??月??日 星座 ??座 血液型 ?型 利き手 ? 出身地 ?? 趣味 ?? 特技 ??
https://w.atwiki.jp/kemonokaiwai/pages/121.html
株式会社KADOKAWA(かぶしきがいしゃかどかわ)は、出版や映像制作等を行っている日本の総合エンターテインメント企業。 基本情報 別名 角川、角川書店、カドカワ 蔑称 指定暴力団 事業内容 出版、映像、ゲーム、インターネットサービス、教育等 代表者 夏野剛(代表取締役社長)山下直久(代表取締役兼執行役員) 本社所在地 東京都千代田区富士見二丁目13番3号 角川本社ビル 創業 1945年11月10日(角川書店として) 設立 2014年10月1日(株式会社KADOKAWA・DWANGOとして) 関連性 けものフレンズプロジェクトの参加企業 組織基本情報テンプレート 概要 関連項目 外部リンク 概要 KADOKAWAグループの中心企業。 株式会社ドワンゴ、株式会社角川アスキー総合研究所、株式会社ムービーウォーカー、株式会社フロム・ソフトウェア、株式会社角川ゲームス、株式会社KADOKAWA Game Linkage、株式会社汐文社など、多くの子会社を所有。 関連項目 梶井斉 井上伸一郎 川上量生 けものフレンズプロジェクト 外部リンク KADOKAWAオフィシャルサイト カドカワストア|KADOKAWA公式オンラインショップ KADOKAWA宣伝局公式(@kadokawa_PR) - Twitter KADOKAWAオフィシャルチャンネル - YouTube KADOKAWAanime - YouTube
https://w.atwiki.jp/abokadou/pages/118.html
21 53 (abokadou) 特別な性癖はない ↓ 21 59 (abokadou) 恥ずかしがり屋の娘に「気持ちよかったら手を握り返して教えて・・・」とか 一貫性と言う言葉を各人よく考えるように。 .
https://w.atwiki.jp/soulou/pages/35.html
株式会社KADOKAWAとは KADOKAWAの前身は、1945年11月に創設された角川書店である。 角川書店は、角川文庫、「ザテレビジョン」、「コンプティーク」、「東京ウォーカー」等を刊行。 書籍を映画化しTVCMで宣伝して販売していくメディアミックス戦略を成功させた。 1991年、富士見書房を吸収合併。 1992年、副社長だった角川歴彦が辞任し、株式会社メディアワークスを設立。 1993年、角川春樹が社長を解任される。 2002年、メディアワークスを子会社化。 2003年4月、角川ホールディングスに社名変更し持株会社化した。出版業務は新設した株式会社角川書店に事業譲渡した。 2004年3月、株式会社メディアリーヴス(旧株式会社アスキー)を子会社化。エンターブレインを傘下に入れる。 2006年7月、角川グループホールディングスに社名変更。 2011年11月、メディアファクトリーを完全子会社化。 2013年6月、KADOKAWAに社名変更。 2013年10月、連結子会社9社(角川書店、アスキー・メディアワークス、角川マガジンズ、メディアファクトリー、エンターブレイン、中経出版、富士見書房、角川学芸出版、角川プロダクション)を吸収合併。
https://w.atwiki.jp/blokada/pages/25.html
ここでは Blokada が広告やトラッカーをブロックする仕組みを紹介します。 Blokada とは? Blokada は blokada.org が開発する無料・オープンソースの広告ブロッカーです。 無料でプライバシーを侵害する広告・トラッカーを削除することができます。 オープンソース、つまり設計図が公開されているため、安全性を世界中のネットユーザーが検証できます。 開発コミュニティが活発に活動し、定期的にアップデートしています。 目次 DNS ブロック ローカル VPN DNS 選択 DNS ブロック DNS とは、ドメイン名をアクセス先のサーバーの IP アドレスに変換するシステムです。人間の扱いやすいドメイン名をコンピューターの扱いやすい IP アドレスに変換します。ウェブページへのアクセスも広告の表示もほとんどの通信では DNS を使っています。 Blokada では、DNS への「このドメインの IP アドレスを教えてください」というリクエストに存在しない IP アドレスを回答することで広告やトラッカーのデータをどこから入手すればいいかわからなくしています。すると広告が非表示になったりトラッカーが無効になったりします。 リクエストに正しく回答してはいけないドメインは、ブロックリストを選択することで設定します。Blokada では端末のアプリのなかでこの処理を行うため、どの通信をブロックし、どの通信を許可するかを自分で設定できます。 広告の画像が読み込まれなくなるため、ウェブページが見やすくなる、通信量を大きく削減することができる、ページの読み込みが早くなるというメリットがあります。ただし、広告をダウンロードしなくなるのみのため、広告の枠が残ったり空白が表示されたりします。 ちなみに、ブロックしないドメインは Blokada を通り過ぎて設定した DNS に送信され、通常通りの通信を行います。 ローカル VPN これは直接広告ブロックに関わる仕組みではなく、DNS ブロックを行うために使っている仕組みです。まず VPN について説明します。VPN は Virtual Private Network の頭文字で日本語に訳す場合には仮想専用線と表記されます。通常では端末からインターネットへアクセスしますが、VPN では端末とインターネットの間にもう一つ端末を挟みます。 通常 端末ーインターネット VPN 端末ー端末ーインターネット 間に挟んだ端末には、通信がすべて流れ込むため通信内容を制御することができます。間の端末をスマートフォンの中に作ること(ローカル VPN)により前述の DNS ブロックを行います。 DNS 選択 Blokada は DNS ブロックを利用した広告ブロッカーですが、ブロックしないドメインは DNS に変換してもらわなければなりません。Blokada はその先の DNS サーバーを選択することができます。DNS サーバーの中には広告やトラッカー、詐欺サイトなどのドメインを IP アドレスに変換しないポリシーを掲げるものがあり、そういったものを選択すると少ないバッテリーの消耗でブロックできます。 (終) この Wiki について この Wiki は Android / iOS の広告ブロッカー Blokada の非公式 Wiki です。 コメント 名前 コメント
https://w.atwiki.jp/abokadou/pages/177.html
いつものように面白さの誘惑に負けて由仁山いじりをしていた際に、 天界からの監視によって事が発覚してしまった。 @abokadou あとガブリエルではないです(´・ω・`) これからは誘惑に負けないように気をつけよう 2011年6月24日こりずに由仁山いじりをしていた際に、 再び天界からの監視によって事が発覚してしまった。 @abokadou 語尾にガブリエルなんてつけませんよガブリエル(╹◡╹)
https://w.atwiki.jp/abokadou/pages/210.html
You just clicked on this link out of curiousity right? You want to know who this man is. Why is he broadcasting himself sleeping? Who are these people silently watching him ? Is he dead? The answer His name is Abokadou. He is the commander in chief/guru/master/presidente of the legion known as the genius party , a loose cohort of 100+ men and women, united under the banner of following Abokadou and watching his broadcasts, for he is interesting and likable. He broadcasts almost everyday, on Ustream and Justin.tv. He is a very astute and funny man, who likes to show off his worldly knowledge and learning (chisiki-jiman-chuu). Amongst others, he is known as the Zero Style Analyst , for his sharpness in his logic and reasoning. On the other side, Abokadou is a man deeply shrouded in mystery, he has not revealed his sexuality or nationality as of yet. He speaks Japanese primarily, but he understands english as well, so if you ve got something to say, chat with him, and us! He is an expert in the game Tropico , here is the link to his game commentary (in Japanese) http //www.nicovideo.jp/mylist/13846771 The brodcast is done in Japanese, but English comments are welcome. Abokadou s favourite quote in English Ezekiel 25 17. "The path of the righteous man is beset on all sides by the inequities of the selfish and the tyranny of evil men. Blessed is he who, in the name of charity and good will, shepherds the weak through the valley of darkness, for he is truly his brother s keeper and the finder of lost children. And I will strike down upon thee with great vengeance and furious anger those who attempt to poison and destroy my brothers. And you will know I am The Lord when I lay my vengeance upon you."
https://w.atwiki.jp/blokada/pages/16.html
ここでは Blokada 5 for iOS の設定を解説します。OS、アプリのバージョンなどにより異なる場合があります。 Blokada とは? Blokada は blokada.org が開発する無料・オープンソースの広告ブロッカーです。 無料でプライバシーを侵害する広告・トラッカーを削除することができます。 オープンソース、つまり設計図が公開されているため、安全性を世界中のネットユーザーが検証できます。 開発コミュニティが活発に活動し、定期的にアップデートしています。 目次 ブロックリスト設定 DNS 設定 個別ホストの許可 / ブロック Blokada Plus ブロックリスト設定 ブロックリストは Android v4 では「フィルター」と呼ばれていた機能です。ブロックするもののリストである「ブロックリスト」を選択することにより広告やトラッカーのブロック範囲を指定します。 ブロックリストは複数を併用することができます。しかし、ブロックリストをたくさん導入しすぎると処理が重くなり、Blokada の動作や端末自体の動作に影響が出る場合があります。端末のスペックにもよりますがおおむね 2~3 のリストを選択することをおすすめします。 ブロックリストの確認・変更は下の「詳細」から行います。 「ハイライト」にはおすすめ 「有効」には現在使用中のブロックリスト 「すべて」には選択可能なブロックリストの一覧 が表示されます。 トグルをタップすると、ブロックリストを ON / OFF することができます。 ブロックリストの名前部分をタップすると、ブロックリストのさらに細かい設定をすることができます。トラッカーやフィッシングに特化したメニューなどを有効にすることで、見たいものと見たくないものを細かくコントロールできます。 個別のブロックリストについて詳しく知りたい場合はブロックリスト(v5)をご覧ください。 DNS 設定 インターネットを閲覧するとき名前解決を行う「DNS」を選択することで、ページの表示速度を改善することができます。また、広告・トラッカーやウイルス配布サイトなどの有害コンテンツをブロックするポリシーを持つ DNS を選択したり、DNS を暗号化する DNS over HTTPS に対応した DNS を選択してセキュリティやプライバシーを確保することができます。 DNS の確認・変更は下の「設定」 「暗号化」から行います。 設定には、「レベル」「DNS xxxxxxx」という 2 つのメニューがあります。 「レベル」は、暗号化(DNS over HTTPS)に対応した DNS を設定している場合暗号化の有無を選択できます。 「DNS xxxxxxx」は、選択した DNS を表示しています。タップして DNS を変更することができます。鍵マークのついた DNS は DNS over HTTPS に対応しています。 個別の DNS について知りたい場合は DNS(v5)をご覧ください。 注 DNS over HTTPS に対応しているサービスであっても Blokada 側の仕様で Blokada から使用する場合は非対応となっているものがあります。鍵マークで確認してください。 (参考) Blokada 公式フォーラム - What is DNS and how to configure it with Blokada 個別ホストの許可 / ブロック 広告ブロッカーを使用していると、ブロックしてほしくないコンテンツがブロックされることがあります。コンテンツのホスト(URL)を個別に許可することによって広告はブロックしたまま見たいコンテンツを表示させることができます。 逆に、ブロックリストをすり抜けてしまったブロックしてほしいコンテンツをブロックすることもできます。 個別ホストの許可 / ブロックは下の「アクティビティ」から行います。「アクティビティ」はアクセスしたホストの一覧で、ブロックされたものが赤、許可されたものが緑で表示されます。変更したいホストをタップしてメニューを開き、「通信を許可 / ブロックする」をタップします。 自分で許可 / ブロックした通信は「詳細」 「マイ・リスト」に保存されます。ここから削除すると、デフォルトに戻すことができます。 Blokada Plus Blokada Plus は、Blokada 広告ブロッカーに内蔵された有料 VPN サービスです。通常、広告ブロッカーは VPN と併用することができませんが、Blokada に組み込むことによって広告をブロックしながら VPN を使用できます。オープンソースで開発される Blokada の財源となっており、開発者を支援することができます。Blokada Plus には広告ブロックに関する機能は含まれていません。 Blokada Plus VPN、Blokada VPN、Blokada Tunnel などと表記されることもあります。「ホーム」のバーナーから登録できます。登録すると、バーナーの位置に ON / OFF ボタンが表示されます。 (参考) Blokada 公式フォーラム - What is Blokada Plus VPN (終) この Wiki について この Wiki は Android / iOS の広告ブロッカー Blokada の非公式 Wiki です。 コメント 名前 コメント
https://w.atwiki.jp/bookadmin104/pages/12.html
package jcode; ;###################################################################### ;# ;# jcode.pl Perl library for Japanese character code conversion ;# ;# Copyright (c) 1995-2000 Kazumasa Utashiro utashiro@iij.ad.jp ;# Internet Initiative Japan Inc. ;# 3-13 Kanda Nishiki-cho, Chiyoda-ku, Tokyo 101-0054, Japan ;# ;# Copyright (c) 1992,1993,1994 Kazumasa Utashiro ;# Software Research Associates, Inc. ;# ;# Use and redistribution for ANY PURPOSE are granted as long as all ;# copyright notices are retained. Redistribution with modification ;# is allowed provided that you make your modified version obviously ;# distinguishable from the original one. THIS SOFTWARE IS PROVIDED ;# BY THE AUTHOR ``AS IS AND ANY EXPRESS OR IMPLIED WARRANTIES ARE ;# DISCLAIMED. ;# ;# Original version was developed under the name of srekcah@sra.co.jp ;# February 1992 and it was called kconv.pl at the beginning. This ;# address was a pen name for group of individuals and it is no longer ;# valid. ;# ;# The latest version is available here ;# ;#ftp //ftp.iij.ad.jp/pub/IIJ/dist/utashiro/perl/ ;# ;; $rcsid = q$Id jcode.pl,v 2.13 2000/09/29 16 10 05 utashiro Exp $; ;# ;###################################################################### ;# ;# PERL4 INTERFACE ;# ;# jcode getcode(*line) ;#Return jis , sjis , euc or undef according to ;#Japanese character code in $line. Return binary if ;#the data has non-character code. ;# ;#When evaluated in array context, it returns a list ;#contains two items. First value is the number of ;#characters which matched to the expected code, and ;#second value is the code name. It is useful if and ;#only if the number is not 0 and the code is undef; ;#that case means it couldn t tell euc or sjis ;#because the evaluation score was exactly same. This ;#interface is too tricky, though. ;# ;#Code detection between euc and sjis is very difficult ;#or sometimes impossible or even lead to wrong result ;#when it includes JIS X0201 KANA characters. So JIS ;#X0201 KANA is ignored for automatic code detection. ;# ;# jcode convert(*line, $ocode [, $icode [, $option]]) ;#Convert the contents of $line to the specified ;#Japanese code given in the second argument $ocode. ;#$ocode can be any of "jis", "sjis" or "euc", or use ;#"noconv" when you don t want the code conversion. ;#Input code is recognized automatically from the line ;#itself when $icode is not supplied (JIS X0201 KANA is ;#ignored in code detection. See the above descripton ;#of getcode). $icode also can be specified, but ;#xxx2yyy routine is more efficient when both codes are ;#known. ;# ;#It returns the code of input string in scalar context, ;#and a list of pointer of convert subroutine and the ;#input code in array context. ;# ;#Japanese character code JIS X0201, X0208, X0212 and ;#ASCII code are supported. X0212 characters can not be ;#represented in SJIS and they will be replased by ;#"geta" character when converted to SJIS. ;# ;#See next paragraph for $option parameter. ;# ;# jcode xxx2yyy(*line [, $option]) ;#Convert the Japanese code from xxx to yyy. String xxx ;#and yyy are any convination from "jis", "euc" or ;#"sjis". They return *approximate* number of converted ;#bytes. So return value 0 means the line was not ;#converted at all. ;# ;#Optional parameter $option is used to specify optional ;#conversion method. String "z" is for JIS X0201 KANA ;#to X0208 KANA, and "h" is for reverse. ;# ;#$jcode convf{ xxx , yyy } ;#The value of this associative array is pointer to the ;#subroutine jcode xxx2yyy(). ;# ;# jcode to($ocode, $line [, $icode [, $option]]) ;# jcode jis($line [, $icode [, $option]]) ;# jcode euc($line [, $icode [, $option]]) ;# jcode sjis($line [, $icode [, $option]]) ;#These functions are prepared for easy use of ;#call/return-by-value interface. You can use these ;#funcitons in s///e operation or any other place for ;#convenience. ;# ;# jcode jis_inout($in, $out) ;#Set or inquire JIS start and end sequences. Default ;#is "ESC-$-B" and "ESC-(-B". If you supplied only one ;#character, "ESC-$" or "ESC-(" is prepended for each ;#character respectively. Acutually "ESC-(-B" is not a ;#sequence to end JIS code but a sequence to start ASCII ;#code set. So `in and `out are somewhat misleading. ;# ;# jcode get_inout($string) ;#Get JIS start and end sequences from $string. ;# ;# jcode cache() ;# jcode nocache() ;# jcode flush() ;#Usually, converted character is cached in memory to ;#avoid same calculations have to be done many times. ;#To disable this caching, call jcode nocache(). It ;#can be revived by jcode cache() and cache is flushed ;#by calling jcode flush(). cache() and nocache() ;#functions return previous caching state. ;# ;#--------------------------------------------------------------- ;# ;# jcode h2z_xxx(*line) ;#JIS X0201 KANA (so-called Hankaku-KANA) to X0208 KANA ;#(Zenkaku-KANA) code conversion routine. String xxx is ;#any of "jis", "sjis" and "euc". From the difficulty ;#of recognizing code set from 1-byte KATAKANA string, ;#automatic code recognition is not supported. ;# ;# jcode z2h_xxx(*line) ;#X0208 to X0201 KANA code conversion routine. String ;#xxx is any of "jis", "sjis" and "euc". ;# ;#$jcode z2hf{ xxx } ;#$jcode h2zf{ xxx } ;#These are pointer to the corresponding function just ;#as $jcode convf. ;# ;#--------------------------------------------------------------- ;# ;# jcode tr(*line, $from, $to [, $option]) ;# jcode tr emulates tr operator for 2 byte code. Only d ;#is interpreted as an option. ;# ;#Range operator like `A-Z for 2 byte code is partially ;#supported. Code must be JIS or EUC, and first byte ;#have to be same on first and last character. ;# ;#CAUTION Handling range operator is a kind of trick ;#and it is not perfect. So if you need to transfer `- ;#character, please be sure to put it at the beginning ;#or the end of $from and $to strings. ;# ;# jcode trans($line, $from, $to [, $option) ;#Same as jcode tr but accept string and return string ;#after translation. ;# ;#--------------------------------------------------------------- ;# ;# jcode init() ;#Initialize the variables used in this package. You ;#don t have to call this when using jocde.pl by `do or ;#`require interface. Call it first if you embedded ;#the jcode.pl at the end of your script. ;# ;###################################################################### ;# ;# PERL5 INTERFACE ;# ;# Current jcode.pl is written in Perl 4 but it is possible to use ;# from Perl 5 using `references . Fully perl5 capable version is ;# future issue. ;# ;# Since lexical variable is not a subject of typeglob, *string style ;# call doesn t work if the variable is declared as `my . Same thing ;# happens to special variable $_ if the perl is compiled to use ;# thread capability. So using reference is generally recommented to ;# avoid the mysterious error. ;# ;#jcode getcode(\$line) ;#jcode convert(\$line, $ocode [, $icode [, $option]]) ;#jcode xxx2yyy(\$line [, $option]) ;# {$jcode convf{ xxx , yyy }}(\$line) ;#jcode to($ocode, $line [, $icode [, $option]]) ;#jcode jis($line [, $icode [, $option]]) ;#jcode euc($line [, $icode [, $option]]) ;#jcode sjis($line [, $icode [, $option]]) ;#jcode jis_inout($in, $out) ;#jcode get_inout($string) ;#jcode cache() ;#jcode nocache() ;#jcode flush() ;#jcode h2z_xxx(\$line) ;#jcode z2h_xxx(\$line) ;# {$jcode z2hf{ xxx }}(\$line) ;# {$jcode h2zf{ xxx }}(\$line) ;#jcode tr(\$line, $from, $to [, $option]) ;#jcode trans($line, $from, $to [, $option) ;#jcode init() ;# ;###################################################################### ;# ;# SAMPLES ;# ;# Convert any Kanji code to JIS and print each line with code name. ;# ;#while (defined($s = )) { ;# $code = jcode convert(*s, jis ); ;# print $code, "\t", $s; ;#} ;# ;# Convert all lines to JIS according to the first recognized line. ;# ;#while (defined($s = )) { ;# print, next unless $s =~ /[\033\200-\377]/; ;# (*f, $icode) = jcode convert(*s, jis ); ;# print; ;# defined( f) || next; ;# while ( ) { f(*s); print; } ;# last; ;#} ;# ;# The safest way of JIS conversion. ;# ;#while (defined($s = )) { ;# ($matched, $icode) = jcode getcode(*s); ;# if (@buf == 0 $matched == 0) { ;#print $s; ;#next; ;# } ;# push(@buf, $s); ;# next unless $icode; ;# while (defined($s = shift(@buf))) { ;# jcode convert(*s, jis , $icode); ;#print $s; ;# } ;# while (defined($s = )) { ;# jcode convert(*s, jis , $icode); ;#print $s; ;# } ;# last; ;#} ;#print @buf if @buf; ;# ;###################################################################### ;# ;# Call initialize function if it is not called yet. This may sound ;# strange but it makes easy to embed the jcode.pl at the end of ;# script. Call jcode init at the beginning of the script in that ;# case. ;# init unless defined $version; ;# ;# Initialize variables. ;# sub init { $version = $rcsid =~ /,v ([\d.]+)/ ? $1 unknown ; $re_bin = [\000-\006\177\377] ; $re_jis0208_1978 = \e\$\@ ; $re_jis0208_1983 = \e\$B ; $re_jis0208_1990 = \e \@\e\$B ; $re_jis0208 = "$re_jis0208_1978|$re_jis0208_1983|$re_jis0208_1990"; $re_jis0212 = \e\$\(D ; $re_jp = "$re_jis0208|$re_jis0212"; $re_asc = \e\([BJ] ; $re_kana = \e\(I ; $esc_0208 = "\e\$B"; $esc_0212 = "\e\$(D"; $esc_asc = "\e(B"; $esc_kana = "\e(I"; $re_sjis_c = [\201-\237\340-\374][\100-\176\200-\374] ; $re_sjis_kana = [\241-\337] ; $re_euc_c = [\241-\376][\241-\376] ; $re_euc_kana = \216[\241-\337] ; $re_euc_0212 = \217[\241-\376][\241-\376] ; # Use `geta for undefined character code $undef_sjis = "\x81\xac"; $cache = 1; # X0201 - X0208 KANA conversion table. Looks weird? Not that # much. This is simply JIS text without escape sequences. ($h2z_high = $h2z = __TABLE_END__ ) =~ tr/\041-\176/\241-\376/; !!#$!"%! "!V#!W ^!+_!,0! %!(%#)%%*% +%) ,%c-%e.%g/%C 1%"2%$3% 4%(5%* 6%+7%-8%/9%1 %3 6^%,7^%.8^%09^%2 ^%4 ;%5 %7=%9 %;?%= ;^%6 ^%8=^% ^% ?^% @%?A%AB%DC%FD%H @^%@A^%BB^%EC^%GD^%I E%JF%KG%LH%MI%N J%OK%RL%UM%XN%[ J^%PK^%SL^%VM^%YN^%\ J_%QK_%TL_%WM_%ZN_%] O%^P%_Q%`R%aS%b T%dU%fV%h W%iX%jY%kZ%l[%m \%o]%s %r3^%t __TABLE_END__ %h2z = split(/\s+/, $h2z . $h2z_high); %z2h = reverse %h2z; $convf{ jis , jis } = *jis2jis; $convf{ jis , sjis } = *jis2sjis; $convf{ jis , euc } = *jis2euc; $convf{ euc , jis } = *euc2jis; $convf{ euc , sjis } = *euc2sjis; $convf{ euc , euc } = *euc2euc; $convf{ sjis , jis } = *sjis2jis; $convf{ sjis , sjis } = *sjis2sjis; $convf{ sjis , euc } = *sjis2euc; $h2zf{ jis } = *h2z_jis; $z2hf{ jis } = *z2h_jis; $h2zf{ euc } = *h2z_euc; $z2hf{ euc } = *z2h_euc; $h2zf{ sjis } = *h2z_sjis; $z2hf{ sjis } = *z2h_sjis; } ;# ;# Set escape sequences which should be put before and after Japanese ;# (JIS X0208) string. ;# sub jis_inout { $esc_0208 = shift || $esc_0208; $esc_0208 = "\e\$$esc_0208" if length($esc_0208) == 1; $esc_asc = shift || $esc_asc; $esc_asc = "\e\($esc_asc" if length($esc_asc) == 1; ($esc_0208, $esc_asc); } ;# ;# Get JIS in and out sequences from the string. ;# sub get_inout { local($esc_0208, $esc_asc); $_[$[] =~ /($re_jis0208)/o ($esc_0208 = $1); $_[$[] =~ /($re_asc)/o ($esc_asc = $1); ($esc_0208, $esc_asc); } ;# ;# Recognize character code. ;# sub getcode { local(*s) = @_; local($matched, $code); if ($s !~ /[\e\200-\377]/) {# not Japanese $matched = 0; $code = undef; }# jis elsif ($s =~ /$re_jp|$re_asc|$re_kana/o) { $matched = 1; $code = jis ; } elsif ($s =~ /$re_bin/o) {# binary $matched = 0; $code = binary ; } else {# should be euc or sjis local($sjis, $euc) = (0, 0); while ($s =~ /(($re_sjis_c)+)/go) { $sjis += length($1); } while ($s =~ /(($re_euc_c|$re_euc_kana|$re_euc_0212)+)/go) { $euc += length($1); } $matched = max($sjis, $euc); $code = ( euc , undef, sjis )[($sjis = $euc) + $[ + 1]; } wantarray ? ($matched, $code) $code; } sub max { $_[ $[ + ($_[ $[ ] $_[ $[ + 1 ]) ]; } ;# ;# Convert any code to specified code. ;# sub convert { local(*s, $ocode, $icode, $opt) = @_; return (undef, undef) unless $icode = $icode || getcode(*s); return (undef, $icode) if $icode eq binary ; $ocode = jis unless $ocode; $ocode = $icode if $ocode eq noconv ; local(*f) = $convf{$icode, $ocode}; f(*s, $opt); wantarray ? (*f, $icode) $icode; } ;# ;# Easy return-by-value interfaces. ;# sub jis { to( jis , @_); } sub euc { to( euc , @_); } sub sjis { to( sjis , @_); } sub to { local($ocode, $s, $icode, $opt) = @_; convert(*s, $ocode, $icode, $opt); $s; } sub what { local($s) = @_; getcode(*s); } sub trans { local($s) = shift; tr(*s, @_); $s; } ;# ;# SJIS to JIS ;# sub sjis2jis { local(*s, $opt, $n) = @_; sjis2sjis(*s, $opt) if $opt; $s =~ s/(($re_sjis_c|$re_sjis_kana)+)/ _sjis2jis($1) . $esc_asc/geo; $n; } sub _sjis2jis { local($s) = shift; $s =~ s/(($re_sjis_c)+|($re_sjis_kana)+)/ __sjis2jis($1)/geo; $s; } sub __sjis2jis { local($s) = shift; if ($s =~ /^$re_sjis_kana/o) { $n += $s =~ tr/\241-\337/\041-\137/; $esc_kana . $s; } else { $n += $s =~ s/($re_sjis_c)/$s2e{$1}|| s2e($1)/geo; $s =~ tr/\241-\376/\041-\176/; $esc_0208 . $s; } } ;# ;# EUC to JIS ;# sub euc2jis { local(*s, $opt, $n) = @_; euc2euc(*s, $opt) if $opt; $s =~ s/(($re_euc_c|$re_euc_kana|$re_euc_0212)+)/ _euc2jis($1) . $esc_asc /geo; $n; } sub _euc2jis { local($s) = shift; $s =~ s/(($re_euc_c)+|($re_euc_kana)+|($re_euc_0212)+)/ __euc2jis($1)/geo; $s; } sub __euc2jis { local($s) = shift; local($esc); if ($s =~ tr/\216//d) { $esc = $esc_kana; } elsif ($s =~ tr/\217//d) { $esc = $esc_0212; } else { $esc = $esc_0208; } $n += $s =~ tr/\241-\376/\041-\176/; $esc . $s; } ;# ;# JIS to EUC ;# sub jis2euc { local(*s, $opt, $n) = @_; $s =~ s/($re_jp|$re_asc|$re_kana)([^\e]*)/ _jis2euc($1,$2)/geo; euc2euc(*s, $opt) if $opt; $n; } sub _jis2euc { local($esc, $s) = @_; if ($esc !~ /^$re_asc/o) { $n += $s =~ tr/\041-\176/\241-\376/; if ($esc =~ /^$re_kana/o) { $s =~ s/([\241-\337])/\216$1/g; } elsif ($esc =~ /^$re_jis0212/o) { $s =~ s/([\241-\376][\241-\376])/\217$1/g; } } $s; } ;# ;# JIS to SJIS ;# sub jis2sjis { local(*s, $opt, $n) = @_; jis2jis(*s, $opt) if $opt; $s =~ s/($re_jp|$re_asc|$re_kana)([^\e]*)/ _jis2sjis($1,$2)/geo; $n; } sub _jis2sjis { local($esc, $s) = @_; if ($esc =~ /^$re_jis0212/o) { $s =~ s/../$undef_sjis/g; $n = length; } elsif ($esc !~ /^$re_asc/o) { $n += $s =~ tr/\041-\176/\241-\376/; if ($esc =~ /^$re_jp/o) { $s =~ s/($re_euc_c)/$e2s{$1}|| e2s($1)/geo; } } $s; } ;# ;# SJIS to EUC ;# sub sjis2euc { local(*s, $opt,$n) = @_; $n = $s =~ s/($re_sjis_c|$re_sjis_kana)/$s2e{$1}|| s2e($1)/geo; euc2euc(*s, $opt) if $opt; $n; } sub s2e { local($c1, $c2, $code); ($c1, $c2) = unpack( CC , $code = shift); if (0xa1 = $c1 $c1 = 0xdf) { $c2 = $c1; $c1 = 0x8e; } elsif (0x9f = $c2) { $c1 = $c1 * 2 - ($c1 = 0xe0 ? 0xe0 0x60); $c2 += 2; } else { $c1 = $c1 * 2 - ($c1 = 0xe0 ? 0xe1 0x61); $c2 += 0x60 + ($c2 0x7f); } if ($cache) { $s2e{$code} = pack( CC , $c1, $c2); } else { pack( CC , $c1, $c2); } } ;# ;# EUC to SJIS ;# sub euc2sjis { local(*s, $opt,$n) = @_; euc2euc(*s, $opt) if $opt; $n = $s =~ s/($re_euc_c|$re_euc_kana|$re_euc_0212)/$e2s{$1}|| e2s($1)/geo; } sub e2s { local($c1, $c2, $code); ($c1, $c2) = unpack( CC , $code = shift); if ($c1 == 0x8e) {# SS2 return substr($code, 1, 1); } elsif ($c1 == 0x8f) {# SS3 return $undef_sjis; } elsif ($c1 % 2) { $c1 = ($c1 1) + ($c1 0xdf ? 0x31 0x71); $c2 -= 0x60 + ($c2 0xe0); } else { $c1 = ($c1 1) + ($c1 0xdf ? 0x30 0x70); $c2 -= 2; } if ($cache) { $e2s{$code} = pack( CC , $c1, $c2); } else { pack( CC , $c1, $c2); } } ;# ;# JIS to JIS, SJIS to SJIS, EUC to EUC ;# sub jis2jis { local(*s, $opt) = @_; $s =~ s/$re_jis0208/$esc_0208/go; $s =~ s/$re_asc/$esc_asc/go; h2z_jis(*s) if $opt =~ /z/; z2h_jis(*s) if $opt =~ /h/; } sub sjis2sjis { local(*s, $opt) = @_; h2z_sjis(*s) if $opt =~ /z/; z2h_sjis(*s) if $opt =~ /h/; } sub euc2euc { local(*s, $opt) = @_; h2z_euc(*s) if $opt =~ /z/; z2h_euc(*s) if $opt =~ /h/; } ;# ;# Cache control functions ;# sub cache { ($cache, $cache = 1)[$[]; } sub nocache { ($cache, $cache = 0)[$[]; } sub flushcache { undef %e2s; undef %s2e; } ;# ;# X0201 - X0208 KANA conversion routine ;# sub h2z_jis { local(*s, $n) = @_; if ($s =~ s/$re_kana([^\e]*)/$esc_0208 . _h2z_jis($1)/geo) { 1 while $s =~ s/(($re_jis0208)[^\e]*)($re_jis0208)/$1/o; } $n; } sub _h2z_jis { local($s) = @_; $n += $s =~ s/(([\041-\137])([\136\137])?)/ $h2z{$1} || $h2z{$2} . $h2z{$3} /ge; $s; } sub h2z_euc { local(*s) = @_; $s =~ s/\216([\241-\337])(\216([\336\337]))?/ $h2z{"$1$3"} || $h2z{$1} . $h2z{$3} /ge; } sub h2z_sjis { local(*s, $n) = @_; $s =~ s/(($re_sjis_c)+)|(([\241-\337])([\336\337])?)/ $1 || ($n++, $h2z{$3} ? $e2s{$h2z{$3}} || e2s($h2z{$3}) e2s($h2z{$4}) . ($5 e2s($h2z{$5}))) /geo; $n; } ;# ;# X0208 - X0201 KANA conversion routine ;# sub z2h_jis { local(*s, $n) = @_; $s =~ s/($re_jis0208)([^\e]+)/ _z2h_jis($2)/geo; $n; } sub _z2h_jis { local($s) = @_; $s =~ s/((\%[!-~]|![\#\" VW+, ])+|([^!%][!-~]|![^\#\" VW+, ])+)/ __z2h_jis($1) /ge; $s; } sub __z2h_jis { local($s) = @_; return $esc_0208 . $s unless $s =~ /^%/ || $s =~ /^![\#\" VW+, ]/; $n += length($s) / 2; $s =~ s/(..)/$z2h{$1}/g; $esc_kana . $s; } sub z2h_euc { local(*s, $n) = @_; init_z2h_euc unless defined %z2h_euc; $s =~ s/($re_euc_c|$re_euc_kana)/ $z2h_euc{$1} ? ($n++, $z2h_euc{$1}) $1 /geo; $n; } sub z2h_sjis { local(*s, $n) = @_; init_z2h_sjis unless defined %z2h_sjis; $s =~ s/($re_sjis_c)/$z2h_sjis{$1} ? ($n++, $z2h_sjis{$1}) $1/geo; $n; } ;# ;# Initializing JIS X0208 to X0201 KANA table for EUC and SJIS. This ;# can be done in init but it s not worth doing. Similarly, ;# precalculated table is not worth to occupy the file space and ;# reduce the readability. The author personnaly discourages to use ;# X0201 Kana character in the any situation. ;# sub init_z2h_euc { local($k, $s); while (($k, $s) = each %z2h) { $s =~ s/([\241-\337])/\216$1/g ($z2h_euc{$k} = $s); } } sub init_z2h_sjis { local($s, $v); while (($s, $v) = each %z2h) { $s =~ /[\200-\377]/ ($z2h_sjis{ e2s($s)} = $v); } } ;# ;# TR function for 2-byte code ;# sub tr { # $prev_from, $prev_to, %table are persistent variables local(*s, $from, $to, $opt) = @_; local(@from, @to); local($jis, $n) = (0, 0); $jis++, jis2euc(*s) if $s =~ /$re_jp|$re_asc|$re_kana/o; $jis++ if $to =~ /$re_jp|$re_asc|$re_kana/o; if (!defined($prev_from) || $from ne $prev_from || $to ne $prev_to) { ($prev_from, $prev_to) = ($from, $to); undef %table; _maketable; } $s =~ s/([\200-\377][\000-\377]|[\000-\377])/ defined($table{$1}) ++$n ? $table{$1} $1 /ge; euc2jis(*s) if $jis; $n; } sub _maketable { local($ascii) = (\\\\[\\-\\\\]|[\0-\133\135-\177]) ; jis2euc(*to) if $to =~ /$re_jp|$re_asc|$re_kana/o; jis2euc(*from) if $from =~ /$re_jp|$re_asc|$re_kana/o; grep(s/(([\200-\377])[\200-\377]-\2[\200-\377])/ _expnd2($1)/ge, $from, $to); grep(s/($ascii-$ascii)/ _expnd1($1)/geo, $from, $to); @to = $to =~ /[\200-\377][\000-\377]|[\000-\377]/g; @from = $from =~ /[\200-\377][\000-\377]|[\000-\377]/g; push(@to, ($opt =~ /d/ ? $to[$#to]) x (@from - @to)) if @to @from; @table{@from} = @to; } sub _expnd1 { local($s) = @_; $s =~ s/\\(.)/$1/g; local($c1, $c2) = unpack( CxC , $s); if ($c1 = $c2) { for ($s = ; $c1 = $c2; $c1++) { $s .= pack( C , $c1); } } $s; } sub _expnd2 { local($s) = @_; local($c1, $c2, $c3, $c4) = unpack( CCxCC , $s); if ($c1 == $c3 $c2 = $c4) { for ($s = ; $c2 = $c4; $c2++) { $s .= pack( CC , $c1, $c2); } } $s; } 1;
https://w.atwiki.jp/abokadou/pages/100.html
丫戊个堂主催の凸企画 詳しく→http //abokadou.sakura.ne.jp/nentotu/nentotu.html 第5回念能力凸最優秀凸者:餅々御餅、O汁粉 第5回念能力凸アーカイブ .