goos 本を Mac で写経してたらはまったので解決した

goos 本の写経を Mac でやってると WindowLicker のキーボードに関するところではまるようです. ここでも解決方法が示されていますが,WindowLicker を自前ビルドする必要があって面倒です. 少しだけましな方法が WindowLicker のソースを見ていたら発見で…

*scratch* バッファを kill-buffer できなくする.

Emacs 24 から入っている emacs-lock-mode というのを使う. (require 'emacs-lock) (save-excursion (set-buffer "*scratch*") (emacs-lock-mode 'kill)) https://github.com/MrXcitement/emacs/blob/master/init-protbufs.el これを参考にした.

Cucumber と Scala でテストを書いてみた

Cucumber を使ってみたい衝動に駆られて sbt で Cucumber のテストを実行するのを試してみた. 環境 Scala 2.9.2 ScalaTest Cucumber-JVM sbt 0.12.0 xsbt-cucumber-plugin Scala 2.10 だと違うところとかあるみたい. なので Cucumber-JVM, xsbt-cucumber-p…

GetDateFormat with Calendar in Win32 API

この記事は LL/ML Advent Calendar #LLAdventJP の 19 日目です.ある日ケバブを食べにいったら登録されてしまいました. 世の中何を信じればいいのかわかりません. Win32 での日付のフォーマット Windows のネイティブ コードでも日付のフォーマットをした…

package.el を使って必要なパッケージを自動インストールする

最近のビルド ツールは使ってるライブラリの取得とかを全部やってくれて素敵!!ということで Emacs で使うパッケージも、使っているものは勝手に取得してくれるようにしてみました。 何に使うの? 家では Windows と Mac OS X、会社では Windows と環境がいろ…

Cygwin で Python 3.2.3 をビルドする

Python 3.2.3 がリリースされたので Cygwin でビルドしてみました.前回は Python 3.2.2 だったのと,curses や sqlite3 といったモジュールのビルドはできていなかったので,今回はこれらのモジュールのビルドまでやってみました. Cygwin パッケージのイン…

IPython を設定してみた

IPython が Python 3.1 以降に対応していたのでインストールと設定をしてみた.やったのは インストール. プロンプトの設定. ipython 起動時に実行されるスクリプトの設定. インストール IPython は pip でインストールした. % pip-3.2 install ipython …

SCM Boot Camp in Nagoya 1 #scmbc に参加してきた!

@kyon_mm さん主催の SCM Boot Camp in Nagoya 1 に参加してきました.演習では Git 組に参加してきました.演習でつかったリポジトリはこちらです. https://github.com/kei10in/SCMBootCamp 演習 演習では色々と実験させていただきました. グループのみな…

継続的デリバリー読書会に参加した!

@kyon_mm さん主催の 継続的デリバリー読書会 に参加してきました.色々質問できたり深い議論ができてとても充実した一日になりました.本の内容もかなり興味深い内容なので次回も参加したいところです.次回継続的デリバリー読書会 2 もすでに募集が始まっ…

MenuItem をデータバインディングで作る。

最近 MVVM を勉強がてら WPF を触ってる。で、コンテキスト メニューをデータバインディングで作ろうと思ったらはまったのでメモ。 課題 WPF で MVVM やってるときに MenuItem をデータバインディングで作りたいって思うことあると思うんです。で、こうやる…

Cygwin で Python 3.2 をビルドする

次のように普通にビルドしようとしても libpython3.2m.dll.a をビルドする make ターゲットがないと言われてビルド エラーになります. % ./configure % makelibpython3.2m.dll.a の "m" は ABI フラグと呼ばれるもので "m" は PyMalloc を有効にしていると…

Xcode っぽい "{}" の補完をする elisp 作ったよー

Emacs では "{" の入力と同時に "}" を補完してくれるコマンドはありますが,とても使いにくい感があります.Xcode では "{" を入力した直後に改行が入力されると "}" を補完してくれて,とてもすばらしいです.この補完がめっちゃ便利だったので Emacs でも…

Mac での Python 開発環境のつくり方

Python 2.7 + pip + virtualenv + virtualenvwrapper で Python の開発環境を構築します. Python 2.7 のインストール まずは何はなくとも Python 入れないとだめだよねーっていうことで Python 2.7 をインストールします.ここでは Python 2.7 をインストー…

Emacsの背景色の設定方法をまとめてみた

Emacs には背景の設定方法がいろいろありすぎてこまる. なので Emacs 23 以降での背景色,前景色の変更をまとめてみた. 前提知識 face フォント,前景色,背景色,下線の有無といった,スクリーン上でのテキストの表示に関する属性の集合. frame ウィンド…

MacPorts で virutalenv, virtualenvwrapper を導入

明日の Python 東海のハンズオンの準備のため,MacPorts で virtualenv, virutalwrapper を導入した.http://groups.google.com/group/python-tokai/web/12 とりあえず port install. % sudo port install virutalenv-2.6 % sudo port install virutalenvwr…

名古屋 Hackathon ラムダ村 に参加してきました

もう一週間以上も経ちますが,名古屋 Hackathon に参加してきました.主催者の @mzp さんをはじめ他の参加者のみなさんのおかげでとても楽しい時間をすごせたことを感謝いたします.さて,自分は @akineko さん,@kumagi さん,@terurou さんとともに Python…

設定ファイルを bitbucket で管理する

いつかやろう,やろうと思ってた設定ファイルの Web 上での管理をやってみました.いろいろな環境で同じ設定を使ったり,バックアップのやり忘れをさけたいといった場合は Web 上での管理がいいと思います. 管理には bitbucket を使うことにしました.Pytho…

可読性について

まずは、" プログラムの可読性に関する検討 - Life like a clown" をご覧ください。 で、サンプルのプログラムについて、自分としては [5] はなしかなと。理由は、a ≠ b の評価値と関数 f の引数が bool であることに因果関係を見出せないから。たとえば f …

TDD Boot Camp 名古屋 1 日目でやったことを Python で復習する その 2

今日は TDD Boot Camp 名古屋 1 日目のペアプロ体験の後半でやった仕様変更の復習をするよ!前回のものに仕様変更を加えていく. 仕様変更 1 一度にいっぱい set できる set_multi と一度にいっぱい get できる get_multi を実装する仕様変更.正確仕様はち…

TDD Boot Camp 名古屋 1 日目でやったことを Python で復習する

タイトルとおりです.id:t-wada さんからも許可得ることができたのでお題も Python で書き直してみます. あ,ちなみに Python 3.1 です. お題 ↓のような仕様の FileStore クラスを作ります. >>> store = FileStore() >>> sotre.set('foo', 'hoge') >>> st…

TDD Boot Camp 名古屋に参加してきた

2010年7月10日から11日まで2日間に渡ってTDD Boot Camp 名古屋に参加してきた.id:t-wada さん,id:bleis-tiftさん,他すべてのみなさんありがとございました. とても楽しく参加することができました. どんな内容だったかは,TDD Boot Camp名古屋 - 名古屋…

Mac OS X で boost::test するときは <code>#define BOOST_TEST_DYN_LINK</code> が必須

Mac OS X はスタティック リンクをサポートしていないため,boost::test するときは #define BOOST_TEST_DYN_LINK が必須のようです. 経緯 boost.test をちょっと試そうと思っていくつかちょっとだけ実験してた.参考にしたのはとりあえずここらへん. lets…

@property を使ってみる

はじめの一歩 まずは一番簡単な使い方から. #import <Foundation/NSObjCRuntime.h> #import <Foundation/NSString.h> @interface MyObject : NSObject { NSString* value; } @property(copy, readwrite) NSString* value; @end @implementation MyObject @synthesize value; @end int main() { MyObject* obj = </foundation/nsstring.h></foundation/nsobjcruntime.h>…

Hello, World! by Objective-C + Foundation Framework

Objective-C + Foundation Framework な Hello, World! を作る. GC 使わない場合 #import <Foundation/NSString.h> #import <Foundation/NSAutoreleasePool.h> #import <stdio.h> int main(int argc, char **argv) { NSAutorelesePool* pool = [[NSAutoreleasePool alloc] init]; NSString* str = [[NSString alloc] initWith</stdio.h></foundation/nsautoreleasepool.h></foundation/nsstring.h>…

Objective-C の文法を覚える!

JavaScript の文法はだいたいわかったので,Objective-C を覚える!コマンドラインでコンパイルできるようにしてから, Page Not Found - Apple Developer ここで覚えてくのが今の予定. ターミナルでコンパイル まずは,UbuntuでObjective-Cをコンパイルする…

セクション番号を自動で振ってくれる JavaScript

JavaScript の勉強のつもりで作ってみました. 表示例 <h1>ABC</h1> <h2>foo</h2> <h2>bar</h2> <h3>hoge</h3> <h3>fuga</h3> <h1>XYZ</h1> <h3>piyo</h3> こんな感じのものが,こんな風になります. コード var HeaderEnumerator = function() { this.enumeratingTags = ['H1', 'H2', 'H3', 'H4', 'H5', 'H6']; this.section…

今更だけど JavaScript 勉強を始めるよ!

ベースになる HTML ファイルの準備 まずはベースにする HTML ファイルを作る. とりあえず内容は↓ <html lang="ja"> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <meta http-equiv="content-style-type" content="text/css"> </meta></meta></head></html>

[Windows] 7/Vista と XP のデュアル ブート環境構築

最近 Win7 と HDD を買ったので XP とのデュアル ブート環境構築をしたので, 設定とかをまとめておきます.特に Web で調べてみた方法だけでは,Widows XP を起動しようとしたときに強制再起動されてしまったので,その問題解決についても述べます. 構成 H…

flymake で nmake

flymake で nmake が使われるようにした.単純に Visual C++ のコンパイラーを直接呼ぶより include ディレクトリとか追加できて超便利! .emacs.el .emacs.el にはこんな感じで追加するといいよ (defun flymake-nmake-init () (let* ((temp-file (flymake-i…

[C++] クラスを定義するときに,これだけは必要だろっていうメンバーのまとめ

class T { public: T(); T(const T& other); virtual ~T() throw(); T& operator=(const T& other); private: struct TImpl; TImpl* pimpl_; } T::T() デフォルトコンストラクタ T::T(const T& other) コピーコンストラクタ virtual T::~T() throw() デスト…