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

Emacsが勝手に文字コードを変更して文字コードを保存しやがる件

<html> <head> <meta http-equiv="content-type" content="text/html; charset=SHIFT_JIS"> <title>タイトル</title> </head> <body> </body> </html> みたいなファイルをutf-8で保存しようとすると勝手にcharsetの設定を認識してsjisで保存しようとemacsがお節介をやいてくれるのでなんとかした。 //どうせautoなんたらencodin…

[misc]codereposに登録しようかしら

http://adagio.ya-lab.org/ 連れの結婚式なんかの写真を配るのが面倒だからという理由で開発したrails製オンラインアルバムadagioがわりとうまくできたのでcodereposにあげることにした。しかしcodereposのコミット権の申請をしていないことに気づいたので今…

データをCSVで取得する

$ psql dbname -c 'SELECT id, name FROM users ORDER BY id;' -A -F, > dbname.csv

[ubuntu][php] Ubuntu(hardy)のphp-gdでimagerotateを使えるようにする

ubuntuのphp-gdパッケージはgdがphpに組み込まれない形でビルドされているのでimagerotateなどの一部の関数が使えない。それはよろしくないのでリビルドする $ mkdir ~/deb/php5 $ cd ~/deb/php5 $ apt-get source php5 $ sudo apt-get build-dep php5 $ cd …

[ubuntu][deamon] 特定のポートにListenしているdaemonとそのpidを調べる

linuxではfuserを使えばいいとのこと $ sudo fuser -nv tcp 80 USER PID ACCESS COMMAND 80/tcp: root 6006 F.... apache2 www-data 6007 F.... apache2 www-data 6008 F.... apache2 www-data 6009 F.... apache2 www-data 6010 F.... apache2 www-data 601…

create_functionを使ってみやがれ

php

PHPでもこういうコードはかけるんだよという一つの例 int(3) [3]=> string(4) "hoge" } */ // 0まで消えてしまうのが気にくわない人はis_nullをつかえ $result = array_filter($ary, c…

Emacs23でファイルを保存したらTabを勝手にspaceに変えやがるのをFix

一人で書いてたコードはインデントが全てスペースなので気づかなかったけどtabが保存できなくなっていた。 以下のように.emacsに記述してfix (eval-after-load "untabify-file" '(progn (remove-hook 'write-file-hooks 'untabify-before-write)))

テスト用のメールアドレスを大量に作る

localhost.netなどのドメインを使用してそのドメイン宛のメールアドレスを全部aliasでforwardしてやればいい。 $ sudo su - # vi /etc/postfix/main.cf // vitual_alias_mapsにpcreで/etc/postfix/aliases.pcreを指定する virtual_alias_maps = pcre:/etc/po…

[linux]時計を無理やり狂わせる 境界値のテストなどで時刻を自由に変えたい時のやり方 $ sudo su - # date 0415145808 # 2008年4月15日14時58分08秒になる # hwclock systohc 元に戻す時はntpdateを使う # ntpdate ntp1.jst.mfeed.ad.jp

qmailでメールをすぐ送らずにキューに溜める

qmailはqmail-sendを使ってメールを送るのでqmail-sendのパーミッションを落として実行できなくすればいい $ sudo su - #chmod 600 /usr/sbin/qmail-send # mail test@example.com Cc: Subject: test Null message body; hope that's ok c# qmail-qread 24 M…

mailqを操作してみる

まずはmailqを貯めるように設定 $ sudo su - # echo "defer_transports = smtp" >> /etc/postfix/main.cf # postfix reload # mail test@example.com # mailq -Queue ID- --Size-- ----Arrival Time---- -Sender/Recipient------- 508634D0099 299 Mon Mar 2…

erlangでfizzbuzz

erl

erlの勉強中。とりあえずfizzbuzzを書いてみた -module(fizz_buzz). -compile(export_all). fizz_buzz(100)-> 100; fizz_buzz(N)-> if N rem 3 =:= 0 -> io:fwrite("fizz\n"); N rem 5 =:= 0 -> io:fwrite("buzz\n"); true -> io:fwrite("~p\n", [N]) end, f…

ファイルのアクセス時間を好きにいじる

$ ruby -r time -e 'File.utime(Time.parse("2007-01-01"), Time.parse("2007-01-01"), "hoge.dat")'

Flickerから自動で適当に壁紙を取得するWebilderをインストール

$ sudo vi /etc/apt/source.list.d/webilder.list deb http://debian.websterwood.com/ feisty main deb-src http://debian.websterwood.com/ feisty main $ sudo apt-get update $ sudo apt-get install webilder webilder-gnomeGnomeのツールバー上で 右ク…

ドキュメントを読もう

コードを読めっていうのはプログラマの間ではそりゃ常識もいいところ。 ちょっと何か合ったときは「とりあえずコード読め」となるわけ。 そりゃ確かにコードには全ての情報が入っているわけやけどなんしかコードを読むのは時間かかるし面倒だし。初心者プロ…

Thinkpad x61 with Ubuntuの無線LANが使えなくなった

普段は有線LANを使ってるんだけど外で無線LANを使おうと思ったら デバイスそのものを認識していなかった $ iwconfig lo no wireless extensions. eth0 no wireless extensions.おいおい!! $ lsmod | grep iwl iwl4965 103284 0 iwl3945 171124 0 mac80211 …

yawsのインストールにちょっとつまづいたのでメモ

erl

erlangには前から興味があったけど重い腰をやっと上げようと思いとりあえずインストールをしてみた。 その時にyawsもインストールしようとしたんだけど上手く行かなかった。 んでいろいろやってみて成功したのでメモで細かいことは置いておくとして、結局の…

Thinkpad X61にUbuntuをインストール、設定する4

サスペンドとハイバネートがうまくいかないのをなんとかする # apt-get install pm-utils # apt-get install uswsusp # vi /etc/default/acpi-support //差分 @@ -39,7 +39,7 @@ # Uncomment the next line to switch away from X and back again after resu…

Thinkpad X61にUbuntuをインストール、設定する3

compiz-fusionを動かす $ glxinfo | grep direct direct rendering: Yes # sudo su - # vi /etc/X11/xorg.conf //差分 @@ -79,6 +79,8 @@ Identifier "Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller" Driver "intel" BusID "PCI:0:2…

Thinkpad X61にUbuntuをインストール、設定する2

何かとインストール # apt-get install mozilla-thunderbird # apt-get install apache2 # apt-get install amarok kde-i18n-ja amarok-engines # apt-get install anthy-el # apt-get install automake autoconf libtool bison flex cvs manpages-ja gcc g+…

Thinkpad X61にUbuntuをインストール、設定する

CapsLockをCtrlにする システム→設定→キーボード→レイアウトオプションタブ→Ctrl key position→SwapCtrl and CapsLock /etc以下をsubversionで管理する $ sudo su - # apt-get install subversion # mkdir -p /var/svn/etc # svnadmin create /var/svn/etc #…

ActiveResourceで利用可能なRESTful郵便番号検索を作った。

郵便番号から住所を割出すWebサービスはいくらかあるんだけど、 SOAP-RPCだったりいちおうRESTだけどパラメーターで渡していたりと なかなかActiveResourceから利用できそうなのがなかったので作ってしまった。http://zipcode.ya-lab.org/

PHPのfget_csvではまるのでSHIFT_JISロケールを作成しておく

$ sudo localedef -f SHIFT_JIS -i ja_JP /usr/lib/locale/ja_JP.SJIS

[low] VRAMにアセンブラで直書き

アセンブラを触ってみるとなんというかスイッチをいっぱい触ってる気分になる。 で、今日やってみたのがBIOSを使わずVRAM(メモリ上のディスプレイ領域)に直書きしてみること。 ソースはこんな感じ。 [ORG 0] jmp 07C0h:start start: mov AH, 0x00 mov AL, 0x…

[low]初めの第一歩

その昔「30日でできるOS自作入門」を片手にHariboteOSを写経した経験はある。 だけどそれで終わっていた。今回はそれを踏まえたのかなんなのか知らないけど自分で調べてOS作りをすることにする。ちなみに「30日でできるOS自作入門」は友達に貸したまま返って…

[雑記]プログラマとして生き残れない俺

http://idm.s9.xrea.com/ratio/2008/01/02/000733.htmlによるとプログラマならOSかコンパイラかCPUを作れないとねぇ〜〜ってことらしい。スマンがどれも作れない。ってことで2008年の目標でOSを作ることに決めたり決めなかったり。なんか以前もそんなことを…

[rails][code_reading] ActiveRecord::Base#saveメソッドのvalidationのかかる順番

ActiveRecordのsaveメソッド時のvalidationがどういう順番で働いているのかを調べた。 まず普通にActiveRecord::Base内を「def save」で検索 #ファイル /usr/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/base.rb 1971行目-1973行目 def sa…