2016-01-01から1年間の記事一覧

Adventure Land

Adventure LandというMORPG風のゲームがある。数か月前くらいにできて、まだプロトタイプだそうだが、cursors.io, agar.io, diep.ioのようにHTML5ベースのゲームだ。 HTML5ということはJavaScriptで動いているわけで、クライアントサイドでごにょごにょやる…

diff -Wの関数名長制限をなくす

diffには差分文脈の関数を表示する機能があり、-W (--show-function-line)で関数とするパターンをカスタマイズできる。ただ関数名の長さに40字の制限があって長いと途中で途切れてしまう。 unix diff --show-function-line truncates outputやfunction is tr…

WindowsのStrawberry Perlで最新のSQLiteを使う

SQLiteで新しいバージョンを使いたくなった。CPANで入れてみても9か月前のバージョンしか入らない。 cpanm -n DBD::SQLite perl -MDBD::SQLite -e "print $DBD::SQLite::sqlite_version" # 3.10.2 インターフェイスをどうこうする必要はないのでSQLiteのソー…

32bit版Windows 7をWindows 10に更新

あるPCがPCIボードの事情でWin 7 32bitにしがみついていたが最近それが不要になった。すでに10月で無料更新期限後だが、まだ普通に更新できるという話なので更新してみた。 まず公式ダウンロードページから作成ツールをダウンロードする。後々のことも考えて…

startコマンドがファイルデスクリプタを引き継いでしまう

3つのスクリプトがあるとする。 a.bat は b.bat を実行し、そのエラー出力をログに保存する b.bat はいろいろな処理をする過程で c.pl というデーモンを起動する c.pl はデーモンなので終了しない # a.bat call b.bat 2>>error.log # b.bat start wperl c.pl…

起動ディスクをSSDにした

SSDに換装したのではなくHDDはそのままに起動ドライブをSSDにコピーする形。OSはWindows 7。 HDDはC, D, E, Fの4パーティションでC:が起動ドライブ。このC:のみをSSD化したわけだ。 CFD販売のSSDなのでクローンはOEM版のEasyDiskCopyをサイトからダウンロー…

Java (JRE 1.8.0 update 91)が動作しない (Windows 7, 32bit)

実行・アンインストールできない Javaを使ったプログラムを実行しようとしても何も起きない。タスクマネージャを見るとjavaw.exeが暴走している。Javaのコントロールパネルを開こうとしても同様。 再インストールするためにアンインストールしようとしても同…

符号化方式"UTF8"文字0xHEX<は"EUC_JP"と同じではありません

PostgreSQL 8.4 のメッセージでこんなのが出た。 意味が理解不能なので元のメッセージを見ると、"character 0xHEX of encoding "UTF8" has no equivalent in "EUC_JP"となっていた。 つまり正しくは「エンコーディング UTF8 の文字 0xHEX は対応する文字が E…

Windows 10への更新予告が出た。

Windows Updateを自動にしているPC。GWXのKBは入っているものの、そこからの予約は行なっていない。いきなり15分後にWindows 10にアップグレードするという通知が出た。 予約していない場合でもウインドウを閉じると強制アップデートされるという話は聞いて…

/以下のパーミッションを壊してしまった

find . -print0 | xargs -0 chmod o+rするつもりが.の代わりに/を打ってしまった。しかもrootでサーバ設定をいじっていた流れで作業していたので権限に不足無し。なぜchmod -R o+r .ではなくわざわざ長いコマンドにしたのか不明だが、だからこそtypoもしたの…

Strawberry Perl 5.22.1.3 (32bit)でText::Mecabをインストールできない

ポータブル版でWin-Rからportableshell.batを開き、cpanm --notest --interactive Text::MeCab((cpanmでビルドする場合mecab-configのないWindowsでは--interactiveが必要。)) するとエラーになる。ビルドログには以下のメッセージ。 g++.exe -o blib\arch\a…

PCRE は possessive を使うと速いのか → 変わらない

PG

簡単な例として /.*/ のようなパターンがあったときに "......" にマッチさせる必要がないならば /.*?/ (non-greedy) とすれば無駄なバックトラックが発生しない分相当速くなる。 これは当たり前だが、ここでさらに "...0 " にマッチさせたくないならば /[^*…

Genieo/1.0 のDoSアタック

ブラウザプラグインらしい。 robots.txtを無視してアクセスする。 Connection: close で間隔をおかずに連続アクセスする。 URLの #以降を無視しないので同じURLを何度も読み込む。 robots.txtの件は Disallow: /nobot と書いても /nobot.html にアクセスする…