2012-06-27のちょっと気になった記事

作業効率が10倍アップする Chrome Developer Tools の使い方
http://dl.dropbox.com/u/148989/slide/console.html#1

AngularJS − Superheroic JavaScript MVC Framework
http://angularjs.org/

Jam - The JavaScript package manager
http://groundcomputing.co.uk/code/jam

SENNA
http://ml.nec-labs.com/senna/

SIE 1.0の公開 - プラグインレスでSVGを表示する「SIE」開発ブログ
http://d.hatena.ne.jp/dhrname/20120615/p1

highlight.js
http://softwaremaniacs.org/soft/highlight/en/

本物のプログラマはHaskellを使う - 本物のプログラマはHaskellを使う:ITpro
http://itpro.nikkeibp.co.jp/article/COLUMN/20060915/248215/

LooseLeaf : Lightweight blog engine for Node.js
http://looseleafjs.org/

Adobe Shadow | preview mobile web - Adobe Labs
http://labs.adobe.com/technologies/shadow/

Vert.x JavaScript API Manual
http://vertx.io/core_manual_js.html

purplefox/vert.x
https://github.com/purplefox/vert.x

hideo55/node-groonga
https://github.com/hideo55/node-groonga

AimingのGitHubを使った開発フロー // Speaker Deck
https://speakerdeck.com/u/fujimura/p/aiminggithub

Sublime Text 2 | Public Draft | Just writing down what I've found and collected
http://publicdraft.studiomohawk.com/research/2012/04/14/01-02-sublimetext2/

DebianとUbuntuにgroongaをインストール - わだいのたけひこのざっき
http://d.hatena.ne.jp/takehikom/20110121/1295543991

groonga - カラムストア機能付き全文検索エンジン
http://groonga.org/ja/

adobe/brackets
https://github.com/adobe/brackets

Opa - Web application programming platform
http://opalang.org/

[JS]jQueryのプラグイン33+1選 -2012年5・6月 | コリス
http://coliss.com/articles/build-websites/operation/javascript/jquery-plugins-best-2012-jun.html

Gists | GitHub API
http://developer.github.com/v3/gists/

ECMAScript 5 に追加された新しい関数(Object編) - hachy.net
http://www.hachy.net/2011/01/ecmascript-5-object.html

割とJavascriptへの理解が深まった。
posted by 右京 | 雑記

2012-06-13の気になった記事

変なの混じってるけど、気になったのは本当。

ネットショップの構築について、簡単にまとめてみた | More Access,More Fun!
http://www.landerblue.co.jp/blog/?p=3354

『Internet Explorer 10 移行セミナー』フォローアップ - monoe's blog - Site Home - MSDN Blogs
http://blogs.msdn.com/b/osamum/archive/2012/06/08/internet-explorer-10.aspx

あみあみ [キャラクター&ホビー通販] | C3 -シーキューブ- フィア シーツの上でギリギリフィギュア
http://www.amiami.jp/top/detail/detail?gcode=FIG-MOE-5983&page=top

綺麗にデザインされたピクトグラムアイコン100個セット:phpspot開発日誌
http://phpspot.org/blog/archives/2012/06/100.html

The Top 10 Javascript MVC Frameworks Reviewed - CodeBrief
http://codebrief.com/2012/01/the-top-10-javascript-mvc-frameworks-reviewed/

DOM-based XSS
http://www.slideshare.net/test2v/dombased-xss

第3回 HTML5でクロスプラットフォーム開発を実現する4つのツール | Think IT
http://thinkit.co.jp/story/2012/06/12/3579
posted by 右京 | 雑記

Pull RequestしたらCLAにサインしてくれって言われた

このあいだPull Requestしたときに「このコードは良さそうだね。でも先にCLA(Contributor License Agreement)にサインして」と言われました。CLAとは日本語に訳すと"貢献者ライセンス同意書"です。わかりやすく解説してあったページから引用させてもらうと、
CLA はおそらく、法的な安全性と利便性のトレードオフを解決する最良のものでしょう。 CLA は開発者が内容を記入し、プロジェクトに送付する電子的な書式が典型的なものです。 多くの裁判の管轄地域では、電子メールで送付すれば十分です。 安全な電子署名が必要な場合もあります。 どの方法があなたのプロジェクトに合っているかを知るには、弁護士に相談してください。

多くのプロジェクトではふたつのちょっと異なる CLA を使います。 ひとつは個人用、そしてもうひとつは企業用のものです。 しかしどちらであっても、中心となる文言は同じです: 貢献する人(組織) はプロジェクトに "... あなたの貢献を複製したり、派生物を準備したり、公に表示したり、公に実行したり、 サブライセンスするために、「半永久的で、全世界規模で、非独占的で、 無償で、ロイヤリティーがなく、取り消すことができないライセンス」" を与える。というものです。 繰り返しますが、どんな CLA を受け入れる場合でも弁護士に相談すべきです。 しかし、あなたがこれらの文言に慣れていれば、おそらく問題はないでしょう

by 著作権の保有と譲渡

みたいなことだそうです。個人的にOSSに貢献したいみたいな場合はCLAに同意(サイン)しても問題はないかと思います。企業の場合は弁護士に相談したほうが良さそうですね。今回は、具体的にajaxorg/aceでCLAにサインしたので、その過程について説明します。

まず、Ace editorの場合はスクロールした下のほうにCLAの文書があるのでそこから個人用のものをダウンロードして印刷します。

次に、Full Name, Email, Mailing Address(住所), Telephone, Facimile(Faxの番号), Country, Signature(サイン), Dateをそれぞれ手書きで記入します。※Full Nameは誰にでも読めるように綺麗に書き、Signatureはぐちゃっとした筆記体のような感じで書いてください。有名人の書くサインのようなもので、「その人が書きましたよ」という証明になります。あと、Faxを持っていない人はFacimileは無視して構いません(自分はそれでOKでした)。
Screenshot_from_2012-06-12 22:32:06.png

最後に、記入したものをスキャナか写真を撮るかしてパソコンに取り込んでメールに添付して送信すればOKです(このときはsubjectをabout Contributor License Agreementにして、一応Faxもってない旨を本文に書いておきました)。特に問題なければ「ありがとう、マージしたよ」みたいなメールが来ると思います。

おまけ:Pull Requestしたときのやり取り的なやつ。まぁ、英語そんなにできなくてもいいんだってわかってもらえればいいかぁと。Pull Requestのお作法的にはあんまりよくないかもしれませんが。
Pull Request #794: Added JSX edit mode by ukyo ・ ajaxorg/ace
posted by 右京 | 雑記

2012-06-10の気になった記事

Google Readerにスターをつけたまま溜まっていた記事ら。ジャンルはごっちゃである。

Dojo Mobile - The Dojo Toolkit
http://dojotoolkit.org/features/mobile

30 Stylish Designer Portfolio Sites - Boost Inspiration
http://www.boostinspiration.com/web-design/portfolio-sites/

30 Beautiful Dark Website Designs for Inspiration
http://sixrevisions.com/design-showcase-inspiration/dark-website-designs-inspiration/

歯医者が本気で選んだ1,960円の歯磨き粉とやらを実際に使ってみた+α|エアログ
http://ealog.jp/2012/05/2089/

初心者向けMySQLの始め方
http://www.slideshare.net/tmtm/mysql-13117441

Maintainable JavaScript 2012
http://www.slideshare.net/nzakas/maintainable-javascript-2012

Appleの最近のプロダクトで使用されているかっこいいテクスチャをさくっと作るチュートリアル | コリス
http://coliss.com/articles/build-websites/operation/design/photoshop-tutorial-apples-linen-texture-by-fuelyourcreativity.html

自分のサイトの表示を5種のブラウザでチェックできるネットサービス「browserling」 - GIGAZINE
http://gigazine.net/news/20120608-browserling/

凡人が数学を語学として学ぶ具体的な手続きを説明する/図書館となら、できること番外編 読書猿Classic: between / beyond readers
http://readingmonkey.blog45.fc2.com/blog-entry-589.html

アメリカ人が選ぶ! 生産性アップのテクニック・ベスト5 : ライフハッカー[日本版]
http://www.lifehacker.jp/2012/05/120514productivityfive.html

TED英語学習法 | Oops! Study [ウープススタディ] - あなたを天才にする教育サイト
http://oops-study.com/2012/2316/

HTML+JavaScriptでのMetro style appにおける制限 - ういはるかぜの化学 - subtech
http://subtech.g.hatena.ne.jp/mayuki/20120519/1337411900

JavaScript CustomEvent
http://davidwalsh.name/customevent?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+Bludice+%28David+Walsh+Blog+%3A%3A+PHP%2C+CSS%2C+MooTools%2C+and+Everything+Else%29

HTML5によるアニメーション作成を容易にする「Adobe Edge」 - builder
http://builder.japan.zdnet.com/html-css/35017509/

世界のアマゾン横断検索 "Takewari 竹割"
http://www.takewari.com/

Error.stack を使って JavaScript エラーをすばやく診断する - IEBlog 日本語 - Site Home - MSDN Blogs
http://blogs.msdn.com/b/ie_ja/archive/2012/05/17/diagnosing-javascript-errors-with-error-stack.aspx
posted by 右京 | 雑記

PDF構造解説という本の感想

PDF構造解説
PDF構造解説
posted with amazlet at 12.05.27
John Whitington
オライリージャパン
売り上げランキング: 26451

pdfのバイナリをゴリゴリパースするのかなと思いきや、普通にpdfの文字列やベクタ画像やラスタ画像などなどで構成されてます的なことと、コマンドラインツールを使ったpdfファイルの作成方法やAcrobat Xを使ったJavaScriptの埋め込みなど、なんというか、レイヤー高めだなと。つまり、この本が想定している読者はpdf.jsみたいなのを作ろうとしている人ではなく、Webのバックエンドやデスクトップアプリケーションでこういうツールを使ってpdfを生成したい人でしょう。まぁ、紹介されていたコマンドラインツール(Pdftk - The PDF Toolkit)をemscriptenで変換すればブラウザ上で使えて楽しそうかな。

目次(O'Reilly Japan - PDF構造解説)。
posted by 右京 | 雑記

××が出している○○なジャンルのソフトを所持していたという情報

Amazonがゲーム買取の仲介を始めたようで。これ自体ではあまり儲けは出なさそうだが、ユーザの購入データがわかるのはでかい。閲覧データと比べたら格が違う。実際買ってるわけだから、そりゃ相当に興味があるわけだし。使ったらレコメンドの精度が上がるんだろうな。CDとか本とかもやるのかな。もしやったとしても仲介だからAmazonには在庫がいかないんでしょ。頭いいなぁ。
posted by 右京 | 雑記

backbone.jsとかmeteor.jsみたいにイベントを登録する

meteor.jsだとこんな感じで書くアレ。
Template.hello.events = {
'.hoge click': function(e){何か処理},
'.fuga mouseover': function(e){何か処理}
};

Object.definePropertyとsetterを使えばできそうだなと思って。普通に使いやすくていいね。

posted by 右京 | 雑記

ubuntu 12.04で無線LANが繋がらない

broadcam STA 無線ドライバーを使っている場合、この方法で解決できる可能性があります。

まずは以下の記事に書いてあることを手順どおり行います。
How can I get Broadcom BCM4311 Wireless working? - Ask Ubuntu - Stack Exchange

再起動が済んだら、システム設定>追加のドライバーからbroadcam STA 無線ドライバーを追加します。
posted by 右京 | 雑記

jsziptoolsのAPI Referenceできた

masterにgithub pagesのやつがなだれ込んだりしてきて苦労したけどできた!
それよりsphinxとgithub pagesがあまり相性が良くなくてねぇ・・・。

http://ukyo.github.com/jsziptools/docs/build/html/index.html
posted by 右京 | 雑記

mimetype判定

長いので先に使い方。
mimetypes.detect("hoge.mp3");//audio/mpeg
mimetypes.addDictionary({"azunyan": "application/x-peropero"});//辞書の追加
mimetypes.detect("hoge.azunyan");//application/x-peropero

var mimetypes = (function(){
var defaultdic = {
"ez": "application/andrew-inset",
"anx": "application/annodex",
"atom": "application/atom+xml",
"atomcat": "application/atomcat+xml",
"atomsrv": "application/atomserv+xml",
"lin": "application/bbolin",
"cap": "application/cap",
"pcap": "application/cap",
"cu": "application/cu-seeme",
"davmount": "application/davmount+xml",
"tsp": "application/dsptype",
"es": "application/ecmascript",
"spl": "application/futuresplash",
"hta": "application/hta",
"jar": "application/java-archive",
"ser": "application/java-serialized-object",
"class": "application/java-vm",
"js": "application/javascript",
"json": "application/json",
"m3g": "application/m3g",
"hqx": "application/mac-binhex40",
"cpt": "application/mac-compactpro",
"nb": "application/mathematica",
"nbp": "application/mathematica",
"mdb": "application/msaccess",
"doc": "application/msword",
"dot": "application/msword",
"mxf": "application/mxf",
"bin": "application/octet-stream",
"oda": "application/oda",
"ogx": "application/ogg",
"one": "application/onenote",
"onetoc2": "application/onenote",
"onetmp": "application/onenote",
"onepkg": "application/onenote",
"pdf": "application/pdf",
"key": "application/pgp-keys",
"pgp": "application/pgp-signature",
"prf": "application/pics-rules",
"ps": "application/postscript",
"ai": "application/postscript",
"eps": "application/postscript",
"epsi": "application/postscript",
"epsf": "application/postscript",
"eps2": "application/postscript",
"eps3": "application/postscript",
"rar": "application/rar",
"rdf": "application/rdf+xml",
"rss": "application/rss+xml",
"rtf": "application/rtf",
"stl": "application/sla",
"smi": "application/smil",
"smil": "application/smil",
"xhtml": "application/xhtml+xml",
"xht": "application/xhtml+xml",
"xml": "application/xml",
"xsl": "application/xml",
"xsd": "application/xml",
"xspf": "application/xspf+xml",
"zip": "application/zip",
"apk": "application/vnd.android.package-archive",
"cdy": "application/vnd.cinderella",
"kml": "application/vnd.google-earth.kml+xml",
"kmz": "application/vnd.google-earth.kmz",
"xul": "application/vnd.mozilla.xul+xml",
"xls": "application/vnd.ms-excel",
"xlb": "application/vnd.ms-excel",
"xlt": "application/vnd.ms-excel",
"xlam": "application/vnd.ms-excel.addin.macroEnabled.12",
"xlsb": "application/vnd.ms-excel.sheet.binary.macroEnabled.12",
"xlsm": "application/vnd.ms-excel.sheet.macroEnabled.12",
"xltm": "application/vnd.ms-excel.template.macroEnabled.12",
"thmx": "application/vnd.ms-officetheme",
"cat": "application/vnd.ms-pki.seccat",
"ppt": "application/vnd.ms-powerpoint",
"pps": "application/vnd.ms-powerpoint",
"ppam": "application/vnd.ms-powerpoint.addin.macroEnabled.12",
"pptm": "application/vnd.ms-powerpoint.presentation.macroEnabled.12",
"sldm": "application/vnd.ms-powerpoint.slide.macroEnabled.12",
"ppsm": "application/vnd.ms-powerpoint.slideshow.macroEnabled.12",
"potm": "application/vnd.ms-powerpoint.template.macroEnabled.12",
"docm": "application/vnd.ms-word.document.macroEnabled.12",
"dotm": "application/vnd.ms-word.template.macroEnabled.12",
"odc": "application/vnd.oasis.opendocument.chart",
"odb": "application/vnd.oasis.opendocument.database",
"odf": "application/vnd.oasis.opendocument.formula",
"odg": "application/vnd.oasis.opendocument.graphics",
"otg": "application/vnd.oasis.opendocument.graphics-template",
"odi": "application/vnd.oasis.opendocument.image",
"odp": "application/vnd.oasis.opendocument.presentation",
"otp": "application/vnd.oasis.opendocument.presentation-template",
"ods": "application/vnd.oasis.opendocument.spreadsheet",
"ots": "application/vnd.oasis.opendocument.spreadsheet-template",
"odt": "application/vnd.oasis.opendocument.text",
"odm": "application/vnd.oasis.opendocument.text-master",
"ott": "application/vnd.oasis.opendocument.text-template",
"oth": "application/vnd.oasis.opendocument.text-web",
"pptx": "application/vnd.openxmlformats-officedocument.presentationml.presentation",
"sldx": "application/vnd.openxmlformats-officedocument.presentationml.slide",
"ppsx": "application/vnd.openxmlformats-officedocument.presentationml.slideshow",
"potx": "application/vnd.openxmlformats-officedocument.presentationml.template",
"xlsx": "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
"xlsx": "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
"xltx": "application/vnd.openxmlformats-officedocument.spreadsheetml.template",
"xltx": "application/vnd.openxmlformats-officedocument.spreadsheetml.template",
"docx": "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
"dotx": "application/vnd.openxmlformats-officedocument.wordprocessingml.template",
"cod": "application/vnd.rim.cod",
"mmf": "application/vnd.smaf",
"sdc": "application/vnd.stardivision.calc",
"sds": "application/vnd.stardivision.chart",
"sda": "application/vnd.stardivision.draw",
"sdd": "application/vnd.stardivision.impress",
"sdf": "application/vnd.stardivision.math",
"sdw": "application/vnd.stardivision.writer",
"sgl": "application/vnd.stardivision.writer-global",
"sxc": "application/vnd.sun.xml.calc",
"stc": "application/vnd.sun.xml.calc.template",
"sxd": "application/vnd.sun.xml.draw",
"std": "application/vnd.sun.xml.draw.template",
"sxi": "application/vnd.sun.xml.impress",
"sti": "application/vnd.sun.xml.impress.template",
"sxm": "application/vnd.sun.xml.math",
"sxw": "application/vnd.sun.xml.writer",
"sxg": "application/vnd.sun.xml.writer.global",
"stw": "application/vnd.sun.xml.writer.template",
"sis": "application/vnd.symbian.install",
"vsd": "application/vnd.visio",
"wbxml": "application/vnd.wap.wbxml",
"wmlc": "application/vnd.wap.wmlc",
"wmlsc": "application/vnd.wap.wmlscriptc",
"wpd": "application/vnd.wordperfect",
"wp5": "application/vnd.wordperfect5.1",
"wk": "application/x-123",
"7z": "application/x-7z-compressed",
"abw": "application/x-abiword",
"dmg": "application/x-apple-diskimage",
"bcpio": "application/x-bcpio",
"torrent": "application/x-bittorrent",
"cab": "application/x-cab",
"cbr": "application/x-cbr",
"cbz": "application/x-cbz",
"cdf": "application/x-cdf",
"cda": "application/x-cdf",
"vcd": "application/x-cdlink",
"pgn": "application/x-chess-pgn",
"mph": "application/x-comsol",
"cpio": "application/x-cpio",
"csh": "application/x-csh",
"deb": "application/x-debian-package",
"udeb": "application/x-debian-package",
"dcr": "application/x-director",
"dir": "application/x-director",
"dxr": "application/x-director",
"dms": "application/x-dms",
"wad": "application/x-doom",
"dvi": "application/x-dvi",
"pfa": "application/x-font",
"pfb": "application/x-font",
"gsf": "application/x-font",
"pcf": "application/x-font",
"pcf.Z": "application/x-font",
"mm": "application/x-freemind",
"spl": "application/x-futuresplash",
"gan": "application/x-ganttproject",
"gnumeric": "application/x-gnumeric",
"sgf": "application/x-go-sgf",
"gcf": "application/x-graphing-calculator",
"gtar": "application/x-gtar",
"tgz": "application/x-gtar-compressed",
"taz": "application/x-gtar-compressed",
"hdf": "application/x-hdf",
"rhtml": "application/x-httpd-eruby",
"phtml": "application/x-httpd-php",
"pht": "application/x-httpd-php",
"php": "application/x-httpd-php",
"phps": "application/x-httpd-php-source",
"php3": "application/x-httpd-php3",
"php3p": "application/x-httpd-php3-preprocessed",
"php4": "application/x-httpd-php4",
"php5": "application/x-httpd-php5",
"ica": "application/x-ica",
"info": "application/x-info",
"ins": "application/x-internet-signup",
"isp": "application/x-internet-signup",
"iii": "application/x-iphone",
"iso": "application/x-iso9660-image",
"jam": "application/x-jam",
"jnlp": "application/x-java-jnlp-file",
"jmz": "application/x-jmol",
"chrt": "application/x-kchart",
"kil": "application/x-killustrator",
"skp": "application/x-koan",
"skd": "application/x-koan",
"skt": "application/x-koan",
"skm": "application/x-koan",
"kpr": "application/x-kpresenter",
"kpt": "application/x-kpresenter",
"ksp": "application/x-kspread",
"kwd": "application/x-kword",
"kwt": "application/x-kword",
"latex": "application/x-latex",
"lha": "application/x-lha",
"lyx": "application/x-lyx",
"lzh": "application/x-lzh",
"lzx": "application/x-lzx",
"frm": "application/x-maker",
"maker": "application/x-maker",
"frame": "application/x-maker",
"fm": "application/x-maker",
"fb": "application/x-maker",
"book": "application/x-maker",
"fbdoc": "application/x-maker",
"mif": "application/x-mif",
"m3u8": "application/x-mpegURL",
"wmd": "application/x-ms-wmd",
"wmz": "application/x-ms-wmz",
"com": "application/x-msdos-program",
"exe": "application/x-msdos-program",
"bat": "application/x-msdos-program",
"dll": "application/x-msdos-program",
"msi": "application/x-msi",
"nc": "application/x-netcdf",
"pac": "application/x-ns-proxy-autoconfig",
"dat": "application/x-ns-proxy-autoconfig",
"nwc": "application/x-nwc",
"o": "application/x-object",
"oza": "application/x-oz-application",
"p7r": "application/x-pkcs7-certreqresp",
"crl": "application/x-pkcs7-crl",
"pyc": "application/x-python-code",
"pyo": "application/x-python-code",
"qgs": "application/x-qgis",
"shp": "application/x-qgis",
"shx": "application/x-qgis",
"qtl": "application/x-quicktimeplayer",
"rdp": "application/x-rdp",
"rpm": "application/x-redhat-package-manager",
"rb": "application/x-ruby",
"sci": "application/x-scilab",
"sce": "application/x-scilab",
"sh": "application/x-sh",
"shar": "application/x-shar",
"swf": "application/x-shockwave-flash",
"swfl": "application/x-shockwave-flash",
"scr": "application/x-silverlight",
"sql": "application/x-sql",
"sit": "application/x-stuffit",
"sitx": "application/x-stuffit",
"sv4cpio": "application/x-sv4cpio",
"sv4crc": "application/x-sv4crc",
"tar": "application/x-tar",
"tcl": "application/x-tcl",
"gf": "application/x-tex-gf",
"pk": "application/x-tex-pk",
"texinfo": "application/x-texinfo",
"texi": "application/x-texinfo",
"~": "application/x-trash",
"%": "application/x-trash",
"bak": "application/x-trash",
"old": "application/x-trash",
"sik": "application/x-trash",
"t": "application/x-troff",
"tr": "application/x-troff",
"roff": "application/x-troff",
"man": "application/x-troff-man",
"me": "application/x-troff-me",
"ms": "application/x-troff-ms",
"ustar": "application/x-ustar",
"src": "application/x-wais-source",
"wz": "application/x-wingz",
"crt": "application/x-x509-ca-cert",
"xcf": "application/x-xcf",
"fig": "application/x-xfig",
"xpi": "application/x-xpinstall",
"amr": "audio/amr",
"awb": "audio/amr-wb",
"amr": "audio/amr",
"awb": "audio/amr-wb",
"axa": "audio/annodex",
"au": "audio/basic",
"snd": "audio/basic",
"csd": "audio/csound",
"orc": "audio/csound",
"sco": "audio/csound",
"flac": "audio/flac",
"mid": "audio/midi",
"midi": "audio/midi",
"kar": "audio/midi",
"mpga": "audio/mpeg",
"mpega": "audio/mpeg",
"mp2": "audio/mpeg",
"mp3": "audio/mpeg",
"m4a": "audio/mpeg",
"m3u": "audio/mpegurl",
"oga": "audio/ogg",
"ogg": "audio/ogg",
"spx": "audio/ogg",
"sid": "audio/prs.sid",
"aif": "audio/x-aiff",
"aiff": "audio/x-aiff",
"aifc": "audio/x-aiff",
"gsm": "audio/x-gsm",
"m3u": "audio/x-mpegurl",
"wma": "audio/x-ms-wma",
"wax": "audio/x-ms-wax",
"ra": "audio/x-pn-realaudio",
"rm": "audio/x-pn-realaudio",
"ram": "audio/x-pn-realaudio",
"ra": "audio/x-realaudio",
"pls": "audio/x-scpls",
"sd2": "audio/x-sd2",
"wav": "audio/x-wav",
"alc": "chemical/x-alchemy",
"cac": "chemical/x-cache",
"cache": "chemical/x-cache",
"csf": "chemical/x-cache-csf",
"cbin": "chemical/x-cactvs-binary",
"cascii": "chemical/x-cactvs-binary",
"ctab": "chemical/x-cactvs-binary",
"cdx": "chemical/x-cdx",
"cer": "chemical/x-cerius",
"c3d": "chemical/x-chem3d",
"chm": "chemical/x-chemdraw",
"cif": "chemical/x-cif",
"cmdf": "chemical/x-cmdf",
"cml": "chemical/x-cml",
"cpa": "chemical/x-compass",
"bsd": "chemical/x-crossfire",
"csml": "chemical/x-csml",
"csm": "chemical/x-csml",
"ctx": "chemical/x-ctx",
"cxf": "chemical/x-cxf",
"cef": "chemical/x-cxf",
"emb": "chemical/x-embl-dl-nucleotide",
"embl": "chemical/x-embl-dl-nucleotide",
"spc": "chemical/x-galactic-spc",
"inp": "chemical/x-gamess-input",
"gam": "chemical/x-gamess-input",
"gamin": "chemical/x-gamess-input",
"fch": "chemical/x-gaussian-checkpoint",
"fchk": "chemical/x-gaussian-checkpoint",
"cub": "chemical/x-gaussian-cube",
"gau": "chemical/x-gaussian-input",
"gjc": "chemical/x-gaussian-input",
"gjf": "chemical/x-gaussian-input",
"gal": "chemical/x-gaussian-log",
"gcg": "chemical/x-gcg8-sequence",
"gen": "chemical/x-genbank",
"hin": "chemical/x-hin",
"istr": "chemical/x-isostar",
"ist": "chemical/x-isostar",
"jdx": "chemical/x-jcamp-dx",
"dx": "chemical/x-jcamp-dx",
"kin": "chemical/x-kinemage",
"mcm": "chemical/x-macmolecule",
"mmd": "chemical/x-macromodel-input",
"mmod": "chemical/x-macromodel-input",
"mol": "chemical/x-mdl-molfile",
"rd": "chemical/x-mdl-rdfile",
"rxn": "chemical/x-mdl-rxnfile",
"sd": "chemical/x-mdl-sdfile",
"sdf": "chemical/x-mdl-sdfile",
"tgf": "chemical/x-mdl-tgf",
"mcif": "chemical/x-mmcif",
"mol2": "chemical/x-mol2",
"b": "chemical/x-molconn-Z",
"gpt": "chemical/x-mopac-graph",
"mop": "chemical/x-mopac-input",
"mopcrt": "chemical/x-mopac-input",
"mpc": "chemical/x-mopac-input",
"zmt": "chemical/x-mopac-input",
"moo": "chemical/x-mopac-out",
"mvb": "chemical/x-mopac-vib",
"asn": "chemical/x-ncbi-asn1",
"prt": "chemical/x-ncbi-asn1-ascii",
"ent": "chemical/x-ncbi-asn1-ascii",
"val": "chemical/x-ncbi-asn1-binary",
"aso": "chemical/x-ncbi-asn1-binary",
"asn": "chemical/x-ncbi-asn1-spec",
"pdb": "chemical/x-pdb",
"ent": "chemical/x-pdb",
"ros": "chemical/x-rosdal",
"sw": "chemical/x-swissprot",
"vms": "chemical/x-vamas-iso14976",
"vmd": "chemical/x-vmd",
"xtel": "chemical/x-xtel",
"xyz": "chemical/x-xyz",
"gif": "image/gif",
"ief": "image/ief",
"jpeg": "image/jpeg",
"jpg": "image/jpeg",
"jpe": "image/jpeg",
"pcx": "image/pcx",
"png": "image/png",
"svg": "image/svg+xml",
"svgz": "image/svg+xml",
"tiff": "image/tiff",
"tif": "image/tiff",
"djvu": "image/vnd.djvu",
"djv": "image/vnd.djvu",
"wbmp": "image/vnd.wap.wbmp",
"cr2": "image/x-canon-cr2",
"crw": "image/x-canon-crw",
"ras": "image/x-cmu-raster",
"cdr": "image/x-coreldraw",
"pat": "image/x-coreldrawpattern",
"cdt": "image/x-coreldrawtemplate",
"cpt": "image/x-corelphotopaint",
"erf": "image/x-epson-erf",
"ico": "image/x-icon",
"art": "image/x-jg",
"jng": "image/x-jng",
"bmp": "image/x-ms-bmp",
"nef": "image/x-nikon-nef",
"orf": "image/x-olympus-orf",
"psd": "image/x-photoshop",
"pnm": "image/x-portable-anymap",
"pbm": "image/x-portable-bitmap",
"pgm": "image/x-portable-graymap",
"ppm": "image/x-portable-pixmap",
"rgb": "image/x-rgb",
"xbm": "image/x-xbitmap",
"xpm": "image/x-xpixmap",
"xwd": "image/x-xwindowdump",
"eml": "message/rfc822",
"igs": "model/iges",
"iges": "model/iges",
"msh": "model/mesh",
"mesh": "model/mesh",
"silo": "model/mesh",
"wrl": "model/vrml",
"vrml": "model/vrml",
"x3dv": "model/x3d+vrml",
"x3d": "model/x3d+xml",
"x3db": "model/x3d+binary",
"manifest": "text/cache-manifest",
"ics": "text/calendar",
"icz": "text/calendar",
"css": "text/css",
"csv": "text/csv",
"323": "text/h323",
"html": "text/html",
"htm": "text/html",
"shtml": "text/html",
"uls": "text/iuls",
"mml": "text/mathml",
"asc": "text/plain",
"txt": "text/plain",
"text": "text/plain",
"pot": "text/plain",
"brf": "text/plain",
"rtx": "text/richtext",
"sct": "text/scriptlet",
"wsc": "text/scriptlet",
"tm": "text/texmacs",
"tsv": "text/tab-separated-values",
"jad": "text/vnd.sun.j2me.app-descriptor",
"wml": "text/vnd.wap.wml",
"wmls": "text/vnd.wap.wmlscript",
"bib": "text/x-bibtex",
"boo": "text/x-boo",
"h++": "text/x-c++hdr",
"hpp": "text/x-c++hdr",
"hxx": "text/x-c++hdr",
"hh": "text/x-c++hdr",
"c++": "text/x-c++src",
"cpp": "text/x-c++src",
"cxx": "text/x-c++src",
"cc": "text/x-c++src",
"h": "text/x-chdr",
"htc": "text/x-component",
"csh": "text/x-csh",
"c": "text/x-csrc",
"d": "text/x-dsrc",
"diff": "text/x-diff",
"patch": "text/x-diff",
"hs": "text/x-haskell",
"java": "text/x-java",
"lhs": "text/x-literate-haskell",
"moc": "text/x-moc",
"p": "text/x-pascal",
"pas": "text/x-pascal",
"gcd": "text/x-pcs-gcd",
"pl": "text/x-perl",
"pm": "text/x-perl",
"py": "text/x-python",
"scala": "text/x-scala",
"etx": "text/x-setext",
"sfv": "text/x-sfv",
"sh": "text/x-sh",
"tcl": "text/x-tcl",
"tk": "text/x-tcl",
"tex": "text/x-tex",
"ltx": "text/x-tex",
"sty": "text/x-tex",
"cls": "text/x-tex",
"vcs": "text/x-vcalendar",
"vcf": "text/x-vcard",
"3gp": "video/3gpp",
"axv": "video/annodex",
"dl": "video/dl",
"dif": "video/dv",
"dv": "video/dv",
"fli": "video/fli",
"gl": "video/gl",
"mpeg": "video/mpeg",
"mpg": "video/mpeg",
"mpe": "video/mpeg",
"ts": "video/MP2T",
"mp4": "video/mp4",
"qt": "video/quicktime",
"mov": "video/quicktime",
"ogv": "video/ogg",
"webm": "video/webm",
"mxu": "video/vnd.mpegurl",
"flv": "video/x-flv",
"lsf": "video/x-la-asf",
"lsx": "video/x-la-asf",
"mng": "video/x-mng",
"asf": "video/x-ms-asf",
"asx": "video/x-ms-asf",
"wm": "video/x-ms-wm",
"wmv": "video/x-ms-wmv",
"wmx": "video/x-ms-wmx",
"wvx": "video/x-ms-wvx",
"avi": "video/x-msvideo",
"movie": "video/x-sgi-movie",
"mpv": "video/x-matroska",
"mkv": "video/x-matroska",
"ice": "x-conference/x-cooltalk",
"sisx": "x-epoc/x-sisx-app",
"vrm": "x-world/x-vrml",
"vrml": "x-world/x-vrml",
"wrl": "x-world/x-vrml"
};

var userdic = {
"epub": "application/epub+zip",
"gz": "application/x-gzip"
};

var mimetypes = {
addDictionary: function(dic){
for(var k in dic) if(dic.hasOwnProperty(k)) userdic[k] = dic[k];
},
detect: function(filename){
var extension = filename.split(".").pop();
return userdic[extension] || defaultdic[extension] || "aplication/octet-stream";
}
};

return mimetypes;

}).call(this);
posted by 右京 | 雑記

flv memo

あとでちゃんと書く。

FLVの構造

数値はBigEndian
header
body


bodyの中身

previousTagSize
Tag
previousTagSize
Tag
...
Tag
previousTagSize


Tagの種類

DataTag
VideoTag
AudioTag
先頭にDataTag、その後に(VideoTag|AudioTag)のリストというのが通常の構成。


DataTag詳細

なんか結構イイカゲンなのでよくわからん。swfのバイナリ?
ScriptDataValue
識別子(UI8),中身
例:ScriptDataStringの場合
識別子(UI8)=2,文字列の長さ(UI16),文字列[文字列の長さ]
何個かある。


VideoTag詳細
videoTagHeader FrameType 4bit, CodecID 4bit
中身


AudioTag詳細
AACは厚遇されている。他、代表的なコーデックとしてmp3,リニアPCM(wav)が使える。
他のコーデックはサンプリングレートが44.1, 22, 11, 5.5Khzだけ。
AACの場合はAACなんとかコンフィグに詳細な情報を書き込める。
audioTagHeader SoundFormat 4bit, SountRate 4bit, SoundSize 2bit
(AACの場合はもう1byte何か)
中身


sphinxあたりでまとめたほうがいいかな?
posted by 右京 | 雑記

ブラック★ロックシューターとはなんだったのか

多分こんな感じですか?

登場人物

マト:ポエマー
ヨミ:芸術家
カガリ:引きこもり
ユウ:引きこもり
さやちゃん先生:ドS

前提知識

現実世界と厨二世界の2つの世界があって、現実世界の人に対応して厨二世界にもその人の分身みたいなのがいる(マトの場合はブラック★ロックシューター)。現実世界で負った心の傷は厨二世界での分身の体の痛みになるらしい。厨二世界の人が死ぬと心の傷の原因についての記憶を喪失する。

物語のゴール

痛みは厨二世界に押し付けてはいけません。友達と分かち合って成長しましょう。

感想

シリアスな場面で逐一ポエム挟むのやめて欲しかった。
posted by 右京 | 雑記

mp4の基本構造

まず、mp4では数値はビッグエンディアンとだけ書いておきます。

Atom(Box)

uint32 size: Atom全体のサイズ。size自体も含まれる。
byte*4 type: Atomのタイプ。四文字の文字列。
あとは(size-8)バイトぶん中身が入っている。

FullAtom(FullBox)

uint32 size: Atom全体のサイズ。size自体も含まれる。
byte*4 type: Atomのタイプ。四文字の文字列。
uint16 version: バージョン?
uint16 flags: 何かのフラグ。たまに使う。
あとは(size-12)バイトぶん中身が入っている。

Descriptor

byte tag: desicriptorの識別番号。
byte size: tagとsizeを除いたサイズ。実際のサイズは(size+2)バイト。
あとはsizeバイトぶん中身。

これだけ知っておけばバイナリとmp4boxのダンプを見ながら雰囲気をつかめるかも。
posted by 右京 | 雑記

初代ポケモンをやっていたときの夢を見た

あのときは楽しかったなって。

初代ポケモンが出た頃って一般的にはそれほどネットも普及してなくて(ダイアルアップの時代)、情報をどこから得るかというと自分で見つけるか友達から伝わるかだった。例えば、Lv100になる裏技とか、たくさん戦闘をすると普通より強くなるとか。今考えれば仕組みは簡単にわかるんだけどね。

対して、今のポケモンって情報が出すぎてないかな?特に個体値(真の努力値)関係とか。これらの情報のおかげで、時間はかかる(数日〜数週間単位)けど現実的な時間で最高の状態のポケモンを作る事ができるということがわかってきている。これって昔だと、どう考えても現実的に不可能なので妥協するしかなかったんだよね。
これってどういうことかというと、プロアクションリプレイみたいなズルでも手動でも必ず同じ結果になるわけで、だったら手動でやることの意味ってなんなのって。要約すると時間か金かって話じゃないか。誰がそんなゲームやるか。

って朝っぱらから何書いてんだか。というか、ゲームなんてぷよ通だけでいいよね。
posted by 右京 | 雑記

すごい乾燥肌の俺が一番素晴らしいと思う乳液

ROHTO スキンアクアレジスタードマークマイルドミルク

使ったことあるものの中ではこれが一番良いと思います。
他の乳液と比べてベタベタしないのに、乾燥に対して強い。
ついでに日焼け止めとしての効果もあるという、一石二鳥の乳液じゃないでしょうか。


だけどなぜかCMとかで宣伝されないんだよね。
posted by 右京 | 雑記
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。