plasmasphere.net -プラズマスフィア ドットネット-
Diary
JavaScript マルチバイト文字を2文字とした抜き出し
2012/06/30(Sat) 00:06
JavaScriptでバイト計算させるとか狂気の沙汰やで…。
ってことでStringを拡張して、シングルバイトを1文字、マルチバイトを2文字として扱う関数を作りました。
文字長と指定文字の抜き出し関数の2つです。
文字長の取得。
'TEST文字列'.byteLength() とか使うといいよ!
上記の場合は10(Number)で返ってきます。
// 文字列長を取得、シングルバイトは1文字、マルチバイトは2文字として取得する
String.prototype.byteLength = function() {
var l = 0,
str = escape(this.concat()),
length = str.length;
if( str ) {
for( var i = 0; i < length; i++ ) {
if( str.charAt(i) == '%' && str.charAt(i+1) == 'u' ) {
i += 5;
l++;
} else if( str.charAt(i) == '%' && ( str.charAt(i+1) == '2' || str.charAt(i+1) == '3' || str.charAt(i+1) == '5' || str.charAt(i+1) == '7' ) ) {
// *+-./@_以外の文字
i += 2;
}
l++;
}
return l;
} else {
return 0;
}
};
次はsubstrのバイト対応。
'TEST文字列'.byteSubstr( 0, 6 ) だと前の6文字(TEST文)が返ってきます。
(0,5)だとTESTまでしか返しません。
// String().substr をバイト長に対応させたメソッド、シングルバイトは1文字、マルチバイトは2文字として処理する String.prototype.byteSubstr = function( start, max ) { if( start >= this.byteLength() ) { return this.concat(); } else { if( start < 0 ) { start = 0; } var l = 0, str = escape(this.concat()), length = str.length, val = ''; try { for( var i = 0; i < length; i++ ) { var s = i, c = 1; if( str.charAt(i) == '%' && str.charAt(i+1) == 'u' ) { i += 5; l++; c = 6; } else if( str.charAt(i) == '%' && ( str.charAt(i+1) == '2' || str.charAt(i+1) == '3' || str.charAt(i+1) == '5' || str.charAt(i+1) == '7' ) ) { // *+-./@_以外の文字 i += 2; c = 3; } l++; if( l > max ) { break; } if( l >= start ) { val += str.substr( s, c ); } } return unescape( val ); } catch (e) { throw 'Error: byteSubstr [ ' + e + ' ]'; } } };
使いそうで使わない関数ですが、要り用ならどうぞ持って行ってください。
bytestring-min.js
PSO2
2012/06/25(Mon) 00:06
PSO2がオープンβ始まったらしいんでインストールしてみました。
余裕でnProtectが入ってきたんですが大丈夫ですかSEGAは…。
まさか昔みたいにスパイウェア仕込んでるってことはないでしょう、いくら韓国企業のソフトとは言え…。
nProtectでいきなりやる気を削がれましたが、とりあえずキャラ作ってやってみました。
案の定ですが、人多すぎでくっそ重たいですね。
でもまあ、同時接続人数が6万人超えてるのに鯖が落ちてないんで、しっかりチューニングはできているんでしょう。
ハードウェアスペックに物を言わせてるだけかもしれませんが。
ちゃんと正規化されてるDBスキーマなら良いんですけどねぇ。
どうにもオンライゲームのDB管理はずさんなイメージがありまして。
それは置いといて。
シップ5でいつも通りキャラ名 plasma でやってますんで、見かけたら声かけてくださいね。
まあ、あんまりやらないかもしれないですが。
まともに始めるまでにPCの設定が大変でした。
100度になるGPUと50度付近のHDDを何とかするべく色々と。
今はGPU75度、HDD40度辺りで安定するようになりました。
HTPCなんでエアフロー確保するのが大変(;´Д`)
FPS30に下げただけでGPU20度下がったのがなんとも言えない感じ。
Xperia p と Xperia sola を買いました
2012/06/19(Tue) 00:06
Xperia P(LT22i) と Xperia sola(MT27i) を買いました。
いつも通り1shopmobileです。
支払いはGoogleCheckoutからなんで、Android携帯持ってる人は普通に買えるよ。
Pは私のでsolaは嫁さん用です。
値段は Xperia P が $385、Xperia sola が $299 で送料が $40 に、Discountナンバーで $8 割引。
計 $716 ですね。
確かクレジットが切られた時が若干の円安傾向だったんで、\80.56/$1 くらいだったと思います。
円安つっても80円っすけどね…。
大体 \57,000 でSIMフリーのケータイが2台買えました。
よろしいじゃないよろしいじゃない。
ああ、税関は1500円で手数料200円でした、2台あわせて。
値段だけ考えると去年の Xperia Neo がやたら高かったなあ。
1年でだいぶかわりましたね。
トランジスターの理論限界を突破 次世代省エネデバイス実現へ
とか、有機ELっていうのもありますし、これからどんどん良くなるでしょうな。
Xperia sola には SmartTag が4つ入ってました。
後から買おうと思ってたんでちょうど良かったです。2つもらいました。
使い勝手はまぁまぁ、別に無くても困らんです。
日本国内はNFC基準の非接触リーダー無いんで…これからに期待。
PはWhiteMagic液晶が良い感じですね。
省電力設定にするとバッテリもあんまり食わない上、コントラスト高めで太陽光の下でも他よりは見やすいです。
残念なのはLTEに対応してないって事くらいですか。
バッテリー容量が少ないのはいいや、どうせ毎日充電してるし。
これは屋内ですが、コントラストはPのが高いですね。
あんまり高すぎてもギラギラするんですけど、このくらいは全然オッケー。
とりあえずroot取ろうかと思ったんですが、Bootloader アンロックが必要らしいのでひとまず保留。
フォントの入れ替えとセルスタンバイの電波問題あたりやっときたいんですが、ICSまで置いときます。
液晶フィルタは当然ですがアンチグレアにしてます。
Easy Protector EX (アンチグレア) Xperia P LT22
Easy Protector EX (アンチグレア) Xperia sola MT27
目にも優しいしね。
当面はsola用のSIMが無いのでそこを何とかしようと。
カメレオンSIM買ったばっかりですが解約して、IIJmioのファミリープランにしようかと思ってます。
というか、bmobileのサービスって基本的に高いって最近気づきました…。
殆使わない人用に基本料0円SIMくらいじゃないですかね、他とまともに差別化できてるの。
Xperia Neo ICS
2012/06/14(Thu) 00:06
私の持ってる Xperia Neo がやっとICSにできるらしいんでやってみました。
http://talk.sonymobile.com/message/199355
USBで繋いでSEUSでアップデートするだけなんで特に説明もいらないっすね(;´Д`)
変わったところは主にUIと…それくらいですか。
一応デュアルコアCPU用に最適化されてるんで…Xperia Neoにはあんまり恩恵ないですね。
バグがひとつあって、バックグラウンドでメール受信した場合にLEDが光りません。
一応修正する気でいるみたいなんで、不満な人は待ったほうがいいかもね。
rootはFlashtoolで焼けばいけるみたいですけど、面倒なんで試してません。
ワンクリックroot出るまでしばらく中華フォントで我慢します。
あと、スクリーンショットのメニューがなくなりました。
電源ボタンと音量下のボタン同時押しで撮れるらしいです。
そういえばAmbientTime Livewallpaperが動かなくなってました。
これソニエリのソフトなんでさっさとしろー、間に合わなくなってもしらんぞー。
でも国内向けだから更新しないかな…(´・ω・`)国内向けスマフォのICS期待。
Xperia Pを月曜に買って多分明日来るんですよね。
ICSでさっくさくになったら買わんでもいいかなとか思ってたんですが、思ったほどではなかったんでまあいいかな的な。
MGO終了
2012/06/13(Wed) 00:06
MetalGearOnlineが本日(2012/06/13 23:59)をもって終了だそうで。
2008年から3年間の限定でサービスしてたんですが、好評だったんで1年伸ばしたんですかね。
去年は他に楽しいゲームも多かったんで殆どプレイしてなかったんで経緯はちょっとわからんのですが。
今年は3月くらいからプレイしてたんですが、サービス終了ってんでそれからずっとやってます。
間に風の旅人とかTOKYOJUNGLEとか買ってますが、もっぱらMGOでした。
チームスニーキングミッション(TSNE)が大好きでして、他のゲームでは代替できないルールだったのでずっとこれでしたね。
先程MGOのSNSでプレイ時間を確認してみましたが、1200時間ほどプレイしていたようです。
MMOにしたら短いですが、MOにしたら長い方ですね。
因みにPC名はいつも通り plasma でした。
最初の頃はクランにも入っていたんですが、解散してからはずっと1人でしたね。
最終日のはずだった昨日は10000人近くログインしていたようです。
終了間際とは言え、普段は1500人くらいだったんで、やっぱり人は帰ってきてたんでしょうね。
あんまりにログインできないんで終了が一日延期になっちゃってしかもメンテでサーバも増やしたようで…。
多分昨日より人少ないと思うんですが、まあいいのかな。
この辺は最終日メンテでやった方が良かったよね、飛ぶ鳥跡を濁さず的な。
まあ、ぐだぐだな方がコジプロって感じしますが。
ネットゲームの運営的にサーバ全て自社管理だとしたら月間500万くらいは維持費がかかる上、基本プレイ料金無料だったんで赤字を垂れ流していたでしょうねぇ。
PSNゲームで自社サーバってあんまりメリット感じないというか…最近遊んだプレーヤにも表示されないですし、フレンドもゲーム内で完結しちゃいますしね。
まあ、どっちが良いかは人によりけりか。
メタルギア続編の METALGEAR RIGING が先日のE3でプレイアブル出展されてました。
きっとMGO3はライジングについてくるんですよきっと。
きっとやってくれる。
とりあえずTSNEだけ遊ばせてくれたら俺は満足。
ヘッドホンイヤーパッド交換 DR-BT101
2012/05/26(Sat) 00:05
DR-BT101のイヤーパッドが薄いスポンジで痛かったんで交換してみました。
交換したのはキングサイズイヤーパッドで有名?な XBシリーズの MDR-XB300 です。
ヨドバシカメラで注文して5日で届きました。早いね。
値段は2つで750円でした。
箱。
ブレてて見難いですが、型番は A-1000-147-A のようです。
XB300のイヤーパッドはハウジングとの接地面に専用のプラ板がついてるみたいですね。
サクッと取り外しました。
BT101純正のスポンジとXB300のイヤーパッドを見比べてください。
スポンジのしょぼさとキングサイズイヤーパッドの違いに愕然としました。
正直でかすぎた気がするがな!
当然ですが、純正のイヤーパッドではないんでハウジング部との口径があいません。
BT101は6cmくらいでXB300は4cmくらいですね。
ですので少し無理をしてもらいました。
XM300の縁が結構しっかりしてたので、ちょっと切り込みを入れて少し引き伸ばします。
あとはハウジングに引っ掛けて伸ばしながらはめ込み。
伸ばしすぎるとうまく付いてもずれたり、最悪切れちゃうから気をつけるんだ!
まあ、両面テープっていうウラワザもありますんで適当に。
で、両方つきました。
なかなかどうしてとってもお高いヘッドホンみたいじゃないですか!
良い感じですね。
これで長時間つけてても耳が痛くならないでしょう。
なんせキングサイズっすからね!
基本アウトドアヘッドホンなんでこんなでかいイヤーパッドじゃなくて良かった気はしてますが。
まあ、うん。
因みに日中外出るときにつけると、今の気温(25度くらい)で既に耳裏に汗をかく。
今回は耳が痛かったからって理由ですが、使い込んでイヤーパッドが傷んだら交換がおすすめ。
うちのカーチャンみたいに、イヤーパッドがぼろぼろになったからってポンポン捨てるような悲しい人間になっちゃイカンぞ(´;ω;`)<いいヘッドホンだったのに
FUSION IP-Phone SMART を契約してみました
2012/05/22(Tue) 00:05
ニュース漁ってたら基本使用料0円で通話料のみ徴収っていうスンバラシイサービスをFUSIONが開始たいみたいなので、FUSION IP-Phone SMART を契約してみました。
今のところβサービスで登録から5日間の間、1000円分の無料通話がついてくるらしいです。
通話料金は携帯固定電話関係なく30秒8.4円です。
登録はWebからできます、登録してから小一時間で通話できるようになりました。
サービス開始直後だからでしょうが、マイページ内に通話の履歴とか現在の料金とかそういったサービスは全くありません。
あるのはSIP登録用の情報と解約ページのみという放置っぷり。
登録後3日程度でFUSIONから登録書類が送られてきます。
マイページはまあ、βですからね。
これからに期待します。
試した環境は Android2.3.4 + Android標準SIP + bmobile カメレオンSIM Fairで、SIPはChiffonとCSipSimpleも試しました。
通話自体はどのソフトでも問題ありません。
IP電話なので1秒から2秒程度の遅延、標準SIPはハウリングが酷かったですが他は問題なく。
標準SIPは待受許可をすると電池消費が大変な事になります、Android標準のダイヤルアプリに統合できるので良い感じだと思ったんですが、あまりにも酷いので選択肢からは外しました。
コーデックの問題かわからないですが、ハウリングもかなり酷かったですね。
CSipSimpleは電池消費は低く、コーデックの設定やSTUNサーバなんかも細かくできるので色々試す人にはいいかもしれないですね、基本必要ないですけど。
通話品質は一番良かった気がします。
Chiffonは殆ど電池食いません、と言ってもIPメッセンジャーと同じくらいでしょうか。
通話品質もCSipSimpleに比べれば若干落ちますが、問題ありません。
とりあえずChiffonを使っています。コーデックはspeexのみ。
IIJmioのSIMだと30秒で途切れたりする問題があったようですが、今は何とかなったのかな。
2chのネットサービス板に専用スレがあるので、そちらに行ったほうが情報は多いです。
基本資料料0円なのがいいですね。
固定電話には050plusが圧倒的に安いですが(3分8円)、そもそも電話を殆どしないので050plusの315円さえどうしようかと悩んでいたところで。
登録してから2ヶ月しか経ってないですが050plusは解約してFUSIONをメインにしようと思ってます。
固定電話にはSkypeでいいんだよ、月160円で1000円分かけ放題だ。確実に使い切ること無いな(;´Д`)
サービスが増えるのは良い事ですね。
050plusは対応機種のアップデートばっかりで通話品質は悪いままですし、これでケツに火が付けばなにかしらやってくれるでしょう。
ICT分野で楽天vsNTTコミュニケーションじゃどっちの対応が速くて柔軟かは分かりきってる気はしますが。
リテラシーってやつのお話し2
2012/05/18(Fri) 00:05
虚構新聞の橋下市長、市内の小中学生にツイッターを義務化に盛大に釣られちゃった人らがおるそうで。
虚構新聞って名の通り嘘の記事ばっかりで、普通のバカサイトだったんですがどうも最近twitterの関連記事で有名になった?
んですかね、管理人ご本人がそう書いてたのでそうなんでしょう。
釣られた内容はこの辺。
結局釣られてマジレスするまでが盛大なコントだったっていうわけだな。
これで虚構新聞が自粛したら全く楽しくない事になってたんですが(言論の自由含めて)、まあ…全くそんな事は無いわな常識的に考えて。
たった一度リンクをクリックして情報の真偽を確かめるだけの手間を惜しみ、タイトルだけを見て、反射的・盲目的に内容を真実として受け止めてしまう態度こそ、リテラシー上問題があるのではないか。
引用です。
何でもそうだと思うんですが、まるっと鵜呑みにする前にちょっと考えろって事だね。
「新聞は嘘書かない」って言ってたオバちゃんがおったが、そういう人らに是非とも虚構新聞を読んでもらいたいもんだ。
いや、虚構新聞は新聞じゃねーか。
最近はプロの記者がこういう訳の解らん記事書いて金もらってたりするし、考えるいい機会になったんじゃないかな、自分も含めて。
毎日JP:余録:「魏志倭人伝」には「男子は大小と無く、皆黥面…
ふー、びっくりしたばりに糞な記事やと思うけど。
…そういえばコレも毎日新聞。
関連:
plasmasphere.net: リテラシーってやつのお話し
google: サイレントマジョリティを考慮にいれるガイドライン