2009-01-01から1年間の記事一覧
elisp のコードも、Ruby のスクリプトも最新版にして、直ったと思ってたけど、直ってなかった。(;_;) cp932 でないと xmp が動かない 以下のコードは xmp できる。 # -*- coding: utf-8; -*- RUBY_VERSION # => "1.9.1" s = "\u20ac" s.encoding # => #<Encoding:UTF-8> 以下</encoding:utf-8>…
MacPorts の更新を確認してみると、 $ port outdated The following installed ports are outdated: openssl 0.9.8k_0 < 0.9.8k_0バージョンがまったく同じに見えるんですけど。 $ sudo port upgrade openssl ---> Fetching openssl ---> Verifying checksum…
久しぶりに Ruby/Rails 勉強会@関西が開催されます。現在、発表者募集中。第33回 Ruby/Rails勉強会@関西のお題を募集します。日時: 2009 年 4 月 25 日 (土) 13:00〜17:00 場所: 京都女子大学 http://jp.rubyist.net/?KansaiWorkshop33募集締切りは 4 月 11 …
最近 rcodetools の設定で、いつも rubikichi さんに助けて頂いている。 本当にありがとうございます。前回やっとのことで xmpfilter が動いたのだが、今度は rct-complete-symbol による補完ができないことに気がついた。以下のコードで M-TAB すると、補完…
以下の簡単なコードを xmp してみると、 #! /usr/local/bin/ruby19 # -*- coding: cp932; -*- RUBY_VERSION # => "1.9.1" "foo" # => "foo" "foo".encoding # => #<Encoding:Windows-31J> "こんにちは" # => "こんにちは" もちろん、ちゃんと動く。ところが、これを utf-8 に変更す</encoding:windows-31j>…
sudo port -v selfupdate port outdated 他の port に依存しない (と思う) ものを ひとつ選ぶ sudo port upgrade 他の port に依存していたらアウト 新しい port が無くなるまで繰り返す
世の中 map reduce 大流行。 Ruby では map は頻繁に使うけど reduce って使ったことない。と思って調べたら reduce って inject のことか。なーんだ。そう言えば map も collect って名前持ってたね。 Ruby 的な名前 一般的な名前 collect map inject reduc…
音楽の再生中に CD の音とびのようになる (ことがある)音とびした箇所を聞き直すと、今度は音とびしないので、AAC ファイルが壊れている訳ではなさそう。最近、いろいろ環境を変えたので、何が原因なのか分からない。 PPC Mac mini から Intel Mac mini へ i…
新しい Mac mini を買ったので環境設定中。 ruby 1.8.7 をインストール。*1 そして migemo をインストールしたが動かない。何を検索してもマッチしない。 [MIGEMO] Failing I-search: もちろん make check はパスしている。 $ make check Making check in te…
xmp meets elisp 昨日のエントリの comment-dwim は、あのままだと rcodetools とぶつかって、ruby-mode で => マークが付かなくなってしまう。defadvice の NAME を変えれば OK ... と思ったら、それに気付くより先に lispxmp がバージョンアップされて、co…
xmpfilter のような自動注釈を Emacs Lisp で実現する lispxmp.el をリリース - '(rubikitch wanna be (a . lisper)) 早速 scratch バッファで試してみた。 (require 'lispxmp) lispxmp (+ 3 4) ; => Error in eval: (void-variable lispxmp) 2 行目 (requir…
USB メモリを介して感染するウイルスが流行っているらしく、Microsoft からも対策か公開されている。 Windows で "Autorun レジストリ キーの無効化" の強制を修正する方法 指示通り対策はしたものの、本当にこれで大丈夫なのか不安。 確認する方法はないも…
いつものように spam フォルダを眺めていたら、*1「迷惑メールフィルタ・ウィルスチェックサービス提供開始のお知らせ」というのが目についた。迷惑メールを振り分けるために、複数の ISP や web メールのアカウントに届いたメールを Gmail のアカウントに集…
Mac mini がリニューアルしたのでポチッとした。 そして、ふと「Intel Mac だから Windows も動くんじゃね?」と思った。*1 そうすれば今使ってる ThinkCentre も処分できるし。Windows Vista は人気がないみたいなので、Windows XP をインストールしたい。 …
MacPorts で Perl を upgrade できない これで解決したかと思ったけど、やっぱりなにか問題があるみたい。 $ sudo port upgrade installed ... ---> Activating perl5 @5.8.8_0+darwin_9 Error: Activating perl5 @5.8.8_0 failed: Image error: /opt/local/…
okkez さんに Kernel.__method__ を教えてもらった。 RUBY_VERSION # => "1.9.1" def foo __method__ # => :foo end def bar foo __method__ # => :bar end bar __method__ # => nil Ruby 1.8.7 でも、ちゃんと動く。
Ruby で今実行中のメソッド名を知る - 趣味的にっき Ruby 1.8 の時は、こんな感じだった。 RUBY_VERSION # => "1.8.7" class Object def current_method caller.first.scan(/`(.*)'/).to_s end end def foo current_method # => "foo" end def bar foo curre…
本格的に Ruby 1.9.1 に移行してみようと、仕事で使ってるユニットテストを動かしてみた。エンコード絡みのエラーが頻発。 Encoding::CompatibilityError: incompatible character encodings: Windows-31J and ASCII-8BIT もちろんスクリプトは CP932 で書い…
本格的に Ruby 1.9.1 に移行してみようと、仕事で使ってるユニットテストを動かしてみた。test/unit を素直に使うと、勝手にテストが実行される。*1これだと、テスト全体の前処理, 後処理を実装できない。 テスト全体の準備と後始末 Ruby1.8.x の頃は、 Test…
ありがたいことに成瀬さんからコメントを頂いたので昨日の続き。 エンコーディング 結論から言うと、コメント頂いた通り、スクリプトを Windows-31J で書けば、何も迷うことはありません。環境変数 LANG が ja_JP.SJIS なのは間違ってるけど、Encoding.defau…
Ruby 1.9.1 のエンコーディングをいろいろ試してみる。 #!/usr/local/bin/ruby19 # -*- coding: shift_jis; -*- RUBY_VERSION # => "1.9.1" ENV['LANG'] # => "ja_JP.SJIS" __ENCODING__ # => #<Encoding:Shift_JIS> Encoding.default_external # => #<Encoding:Windows-31J> Encoding.default_internal</encoding:windows-31j></encoding:shift_jis>…
これも昔書いた「Unix ユーザのための DOS FAQ」まず簡単なバッチファイルを作る。 ECHO foo ECHO bar それを実行すると、 DOS> foo.bat DOS> ECHO foo foo DOS> ECHO bar bar DOS> _ いちいち実行するコマンドを表示してくれる。 プロンプトまで表示してく…
諸般の事情で今まで放置していたが、やっと職場の Cygwin 環境に Ruby 1.9.1 をインストールした。軟弱者なので --program-suffix=19 で作った。 $ ruby -v ruby 1.8.7 (2008-08-11 patchlevel 72) [i386-cygwin] $ ruby19 -v ruby 1.9.1p0 (2009-01-30 revi…
これも昔書いたもの。 make で何ができるのか? 実行モジュールを作るためのファイルの依存関係を定義。 タイムスタンプを比較して必要なものだけコンパイル。 一般的なコンパイル規則の提供。 コンパイル & インストール作業の抽象化。 make の魂 Unix の世…
ユーザに何か入力してもらうためにプロンプトを出したい。プロンプトは出力に混じらないように標準エラー出力に出す。 $ cat sample ... echo "Are you sure? " >&2 read ask case $ask in [Yy]) ... ;; ... $ ./sample Are you sure? _ echo にそのままプロ…
コマンドプロンプト (いわゆる DOS 窓) を起動すると、プロンプト*1が現われてコマンドを受け付ける。 C:\Documents and Settings\higaki>_プロンプトにカレントディレクトリが表示されていて鬱陶しい。 変更したい。 プロンプトの変更 プロンプトは変数 pro…
普通はファイル名の指定に使うけど、case 文のパターンにも使える。 $ ls bar foo foobar food fool foot $ ls foo? # 1 文字にマッチ food fool foot $ ls foo* # 0 文字以上にマッチ foo foobar food fool foot $ ls foo[a-n] # 範囲内の 1 文字にマッチ f…
社内の勉強会で使った資料や、個人的なメモなど、公開できそうなものを小出しにしてゆきます。
あるコードを見ていたら、こんなのが出てきた。 #if defined(XERCES_NO_NATIVE_BOOL) #ifndef bool typedef int bool; #endif #ifndef true #define true 1 #endif #ifndef false #define false 0 #endif #endif きしょくわる〜 # って 1 桁目じゃなくてもい…
あるライブラリを使おうとヘッダファイルを include したら、意味不明なエラーが出た。 (×) 1 error C2059: 構文エラー : '文字列' (×) 2 error C2091: 関数は関数を返せません。 (×) 3 error C2802: 静的なメンバ 'operator new' に仮引数リストがありませ…