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

PHPで代理クラス(プロキシクラス)を使って、PHP_CodeSnifferでのERRORをWARNINGとして扱う。

PHP

※一般化して例を出したいけどちょっと面倒なので、PHP_CodeSnifferに限った例を出します。 警告は出したいけどERRORほどではない、ってときにWARNINGにしたいのだけど、 PHP_CodeSniffer自体にそういう機能が無いので、自前で何とかしないといけない。何も考…

PHPでディレクトリ一覧を取得するスマートではない方法

PHP

あるディレクトリに存在するディレクトリ一覧を取得する例。

NTEmacsでw32-symlinksを使えるようにする

; windows ショートカットを有効にする ; http://www.emacswiki.org/emacs/w32-symlinks.el ; ntemacs だと使えないぽい ;(setq w32-symlinks-handle-shortcuts t) ;(require 'w32-symlinks) 同じように悩んでいてとりあえず無理やり解決したので載せておく…

Google日本語入力で10進数→{2,8,16}進数変換がすごくイイ!

日本語入力に関しても良かったからずっと使ってて、"きょう"で変換すると"2010/12/18"とか"平成22年12月18日"になったりとかは知ってたけど、 "42"を変換すると"0x2a"、"052"、"0b101010"が変換候補に出ることを知った。 今まで関数電卓とかワンライナーと…

mv filename.{old,new} とは?

Linuxで使えるクレージーな小技コマンドいろいろ | IDEA*IDEA mv filename.{old,new}mvの機能だと勘違いする人がいるかも知れないので補足。 {}にカンマ区切りの文字列を入れとくと、シェルが{}前後の文字列をくっつけながら展開してくれるのです。ファイル…

Re: ディレクトリ配下のjarをまとめてCLASSPATHに入れるシェル : mwSoft blog

ものっっっっっすごく久しぶりにJava書いてるid:holidays-lです。 "public static void main"の引数"String[] args"を忘れて頭の中が?になるぐらい久しぶりです。 更に言うと、CLASSPATHだっけ?JAVA_CLASSPATHだっけ?CLASS_PATH???みたいなことになっ…

CDATAセクションを正しくエスケープする方法

(ここ)は確かにHTMLエスケープしなくてもいいんだけど、(ここ)に予期せぬ"]]>"が現れるとそこでCDATAセクションが終わってしまう。 だから(ここ)に"]]>"という字面が現れないようにしないといけないので、 全ての ]]> を ]]]]> に置き換える。 分断の…

Re: Google日本語入力とMS-IMEの切り替え機能を完全にOFFにする方法 : ライフハッカー[日本版]

Google日本語入力とMS-IMEの切り替え機能を完全にOFFにする方法 | ライフハッカー[日本版] 一方私はMS-IMEを削除した。

MySQLで縦型を横型に(擬似)変換する(GROUP BYでも全ての値を取り出す)方法

普通GROUP BYしたときには、まとめられたレコードのうちどれか1レコードだけが取れます。 GROUP_CONCATを使うと、1レコードではなくて全レコードを連結した値を取り出せます。MySQL :: MySQL 5.6 リファレンスマニュアル :: 12.19.1 GROUP BY (集約) 関数 …

プロジェクト内のファイルをいちいちfindしなくて済むようにlocateする

プロジェクトが大きくなるとfindが重くなるので、locate使いましょう。で、ちょっと困ったこともあるのでその話も。まずupdatedbでファイル一覧のデータベースを作っておきます。 $ project=/path/to/project ; \ updatedb \ --output=${project}.db \ --req…

Re: .emacs分割のすゝめ | tech.kayac.com - KAYAC engineers' blog

.emacs分割のすゝめ - KAYAC engineers' blog init-loader使うのもいいんだろうけど、もっと手軽に ;; 環境毎のファイルは1個で十分 (load (locate-user-emacs-file (prin1-to-string window-system))) ;; 分割ファイル読み込み(~/.emacs.d/init.d/*.elに…

vimで、設定系ファイルを特に修正すること無くfolding(折り畳み)する方法

こんにちわ!今日も元気に折り畳んでますか?設定系のファイルはこんな感じになっていることが多いですよね。 # コメント abc def # コメント2 # コメント2−1 foo bar これをvimで元気に折り畳みたいけど、いちいち{{{とか}}}とか書くほどの元気は無いの…

クラスメンバの記述順序に依存してしまう書き方と、依存させない方法

まぁちょぃとこのコードを見てください。クラスメンバで定数を定義して、クラスメンバでそれを代入するコードです。 package { import flash.display.*; public class Main extends Sprite { private const constant:Object = {}; private var variable:Obje…

Linuxコマンドの日本語マニュアルを(運が良ければ)一発で開く方法 r u feeling lucky?

普段manは英語で読んでるんだけど、たまに日本語で読みたいことがある(bashのマニュアルをさっと見たい時とか)。 日本語マニュアルが手元に無い場合は「Linux JF (Japanese FAQ) Project」にお世話になってたが、一年ほど前にプロジェクトが終了してしまっ…

Re: Time::Piece::MySQL とタイムゾーン - Yet Another Hackadelic

Time::Piece::MySQL とタイムゾーン (訂正あり) - Yet Another Hackadelic Unix timeにタイムゾーンの概念を持ち込むのは気持ち悪いです。 得られたUnix timeに対してタイムゾーンに対応する目的で数値を加算減算してはいけないと思います。 何故ならUnix ti…

colordiffの文字単位版ccdiffを作ったid:yappo++

diffに色付けしたかったけど、colordiffみたいな行単位じゃなくて、文字単位で色付けしたい。 id:yappoのString::Diff - Simple diff to String - metacpan.org使ってccdiff(charactor color diff)というのをでっちあげた。 ってか後から単語単位の方がいい…

mintty-0.9.2-1がインスコ時にエラーを吐いてスタートメニューにショートカットが作成されない

mintty-0.9.2-1がインスコ時にexit(3)的なエラーを吐いてスタートメニューにショートカットが作成されない。 いじってたらこんな感じでできた。 --- etc/postinstall/mintty.sh.orig 2010-11-04 11:03:50.086733700 +0900 +++ etc/postinstall/mintty.sh 201…

埋め込まれたiframeをリロードさせる方法

iframeを更新させるためにこんな処理が書いてあって、 <iframe id="foo" name="foo" src="/bar.html"></iframe> <a target="foo">更新</a> 一応動くには動くんだけど、a要素の使い方がなんだかなーと。軽く調べても出てこなかったので、ちょいと試してみたら document.getElementById("foo").contentWindow.location.reload(); でいけた…

ハインリッヒの法則 - 1つの障害・バグ・ERRORの背後には29のWARNINGがあり、その背景には300の異常が存在する

ハインリッヒの法則 (ハインリッヒのほうそく、Heinrich's law) は、労働災害における経験則の一つである。1つの重大事故の背後には29の軽微な事故があり、その背景には300の異常が存在するというもの。ハインリッヒの(災害)三角形(トライアングル)(…

jQuery.getでtypeを指定しないと、MIME-Typeによって挙動が変わってしまう。

(jQuery1.4.2) ある日、JSONテキストを受け取ってevalする処理がエラーを吐くようになった。こういうコード。 jQuery.get('/foo.json', function(json) { var foo = eval('(' + json + ')'); }); 思い当たるのは、Content-Typeがtext/plainだったのをappli…

trampがたまに固まる問題が解決した。

(NTEmacs 23.2.1 と付属の tramp 2.1.18-23.2にて)Meadowのときからtrampがたまに固まることがあって、そもそもそれがきっかけでNTEmacsに乗り換えたんだけど、NTEmacsでもやっぱり固まった。 どうもファイルが存在する階層が深い場合に起きるっぽいので、…

zshのbindkey -eでC-v/M-vがないってどういう了見なの?

zshでbindkey -eしてもC-v/M-vが無いというのは、 shellじゃなくてterminal側がやれってことなの?それらしいfunctionも無さそうだし…。 minttyではPageUp/PageDownしか設定できないし…。教えてエロイ人! あ、ラインエディットだから複数行っていう概念が無…

window-system毎のファイルを用意する場合の読み込み方について

(cond ((eq window-system 'w32) (load "~/.emacs.d/init-windows")) ((or (eq window-system 'ns) (eq window-system 'mac)) (load "~/.emacs.d/init-macos"))) こういうのは何となく嫌なので (load (concat "~/.emacs.d/init-" (prin1-to-string window-sy…

windows.elのsee-you-again上書きをdefadviceで書き換える

自分のinit.el見てたら (defun see-you-again () "Save all of the window configurations if you say yes, and kill-emacs." (interactive) (when win:current-config (if (yes-or-no-p "Save All Configurations? ") (win-save-all-configurations)) (save…

いいね!ボタンをはてなダイアリーに貼る

クイックスタート - ウェブSDK - ドキュメンテーション - 開発者向けFacebook Social Pluginsをコピペして、http://example.comを自分のブログURLに書き換える。 はてなダイアリーにiframeは貼れないのでいつものようにGoogleガジェットに変換。 iframe → Go…

CygwinでWindowsのプロセスをkillする

CygwinからWindowsのプロセスにシグナルを送るには/usr/bin/killを使えばいいんだけども、 プログラム内からkillしたい時、普通にkillができなかった。 で、深追いすると怪我しそうだったので安直にTASKKILL使った。 #include <unistd.h> int main(int argc, char** ar</unistd.h>…

Firefoxのエラーコンソールをサイドバーに表示する

エラーコンソール(chrome://global/content/console.xul)をブックマークして、プロパティ開いて☑このブックマークはサイドバーに読み込むとする。 常用と開発用でProfileを使い分けていて、常用の方にはFirebugを入れてない。 ちょっとJSエラーが見たい時…

会社の冷蔵庫に入れるなら記名をする

残った飲み物を会社の冷蔵庫に入れるとき自分の名前を書いておきましょう。 「誰かに盗られるのを防ぐため」ではなく「自分の飲み物だと確信するため」です。 名前がないと自分のものかどうか自信がなくて、結局飲まないまま放置してしまうことがあります。 …

シェルスクリプトでsubstring

なるべく外部コマンドを使わずにやってる。(例えばbasenameの代わりに${foo##*/}など) 変数の先頭文字を取り出す方法 ${parameter:offset} ${parameter:offset:length}% /bin/bash -c 'foo=abcde ; echo ${foo:0:1}' a % /bin/zsh -c 'foo=abcde ; echo ${…

Thunderbirdの検索フォルダについて

検索フォルダ便利です。 別プロファイル(家と会社)でも同じ検索フォルダを使いたい時、virtualFolders.datだけをコピーしてもダメで、 検索フォルダを表すMail/Local Folders/foo(Mail/Local Folders/foo.msfと対になっているファイル)が必要です。 この…