tmuxでborderがまともに表示できない件
tmuxでTERMをscreenにして使うと、ncursesなどで使われるborderが"qqqqqqqq"の様になってしまう。これは環境変数NCURSES_NO_UTF8_ACSを0に設定すると直る。 NCURSES_NO_UTF8_ACSの詳細はncursesのmanを参照。tmuxで環境変数を設定するには以下のように書く。set-environment -g...
View Articlerxvt-unicodeで半角カナが豆腐になる件
rxvt-unicodeでjisx0201なフォントを設定して半角カナを表示をすると、文字化けして豆腐になってしまう。原因はsrc/table/jis0201_1976_0.hで定義されているunicodeをjisx0201にマップする処理がおかしいから。これは以下のパッチで修正される。--- a/src/table/jis0201_1976_0.h 2011-07-17...
View Article鳥Haskellerコンテスト
副作用が無いと俺はプログラミングも出来ないのかよもう半分くらい正格評価をしている、速くなるのかこれで悪いね、純粋関数型言語で参照透明性だけは一流のところをみせてやるぜ遅延評価だぜ、信じらんねぇ型は推論した、でもこれじゃだめなんだろHaskellの評価戦略は晴れ時々大荒れ いいね、いい評価戦略だよMonadを…Monadを使うんだ…!スペースリークしてる・・・分かってる!...
View ArticleLinux(X11)でKensingtonのExpert Mouse 7を使う
KensingtonのExpert Mouse 7(EM7)には4つボタンがあり、以下のようにレイアウトされています。.----------. .---------. | 2:Middle | | 8:Back | `----------' `---------' .----------. .---------. | 1:Left | | 3:Right | `----------'...
View ArticleSKK用の2ch顔文字辞書を作る
2chの一行AAの顔文字辞書は、MatsuConにいいのがあるけど、SKK用がない。なのでHaskellで変換ツールを書いた。Google日本語入力用の辞書(UTF-8なので)をソースにして、以下のように使える。最後にskkdic-expr2をしてるのは、文字コードをEUC-JPに変換してるのでソートしなおす必要があるため。$ runghc skkdic-from-imedic.hs...
View ArticleIvy Bridgeで作るフェニックス3号
4/29にIvy Bridgeが出るのでその構成のメモ。CPU:Intel Core i7 3770SCPU Fan:Thermaltake Contac 30+M/B:MSI Z77A-GD55Memory:Corsair CMX16GX3M2A1600C11 (8GBx2)PSU:Corsair CP-9020006-JP (650W)HDD:Western Digital WD25EZRX...
View Articleあなたが学ぶべき10のプログラミング言語
Haskell純粋関数型言語は当然学ばなければなりません。副作用の分離とモナドによる抽象化は本当のプログラマーなら知っておくべきでしょう。遅延評価のメリット・デメリットとそれを活かしたアルゴリズムも重要です。Scalaオブジェクト指向と関数型の機能を合わせ持ったマルチパラダイム言語のScalaを学ぶことは、あなたにとって新たな知見となるでしょう。Twitterのインフラで使われるなど実績も十分で、現...
View ArticlePHPでフィボナッチ数列を出力するソースコードを出力するプログラム
Quineみたいなものだけど、自身のソースコードを次々に書き換えてそれを新たに起動したPHPプロセスに標準入力として与えている。fib.php<?phpfunction php($input){$process=proc_open('php', array(array('pipe', 'r'), array('pipe', 'w')), $pipes);...
View ArticleOpera 15のショートカットキーカスタマイズ
/Applications/Opera.app/Contents/Versions/15.0.1147.132/Opera Framework.framework/Resources/opera.pakにデフォルト設定のJSONが入っていたので、これを参考にProfileディレクトリのPreferencesを書き換えれば色々できそう。 nストロークキーをマッピングできるかどうかは不明。...
View ArticleVimScriptでIteratorを作ってメソッドチェインで処理する
業務でPHPを使っていてarray系の関数の酷さに耐えかねて作ってしまったUnderbar.phpですが、 VimScriptでもIteratorを作ってメソッドチェインで処理したくなってきますね!ということで書きました。特に実用性はありません。
View ArticleTypeScript 0.95でコンパイルできないジェネリックメソッドのコード
0.91ではコンパイルできた以下のコードが0.95ではコンパイルできなくなっている。バグ?interface IFoo { f<T>(): T; } class Foo implements IFoo { f<T>(): T { return null; } } エラーメッセージ:/Users/emon/Desktop/test.ts(5,7): error TS2137:...
View Article型レベル数値リテラルを使って型レベルFizzBuzz
型レベルFizzBuzz(及び、type familyにおけるガードの書き方) - claustrophobiaを見て自分も型レベルFizzBuzz書いてみました。 GHC 7.8以降で動作します。Natを受け取るとFBkindを持つ型を返すFizzBuzz型族と、FBに対するsingletonになるSFB型を定義して、...
View Article時間計算における丸め
本稿では時間計算についての丸め操作を考える。 最初に丸めの定義は以下とする。丸め(まるめ)とは、与えられた数値を、ある一定の丸め幅の整数倍の数値に置き換えることである。...
View ArticlePSR-7とPSR-15を使ったWebアプリケーション開発
はじめにPSR-7(HTTP Message)が承認されてからしばらく経ちますが、現在はこれを使った様々なライブラリ・フレームワークが登場しています。...
View Articlerxvt-unicodeのフォントレンダリングを改善する
問題最近はNoto Fontという高品質な日本語フォントが無料で手に入るいい時代になりました。 しかし、rxvt-unicodeでこのフォントを指定すると、とても残念な表示になってしまいます。フォントの設定は以下のものです:Rxvt.font: \ xft:Consolas:pixelsize=13, \ xft:Noto Sans CJK...
View ArticleKensington Expert Mouse 5 USBをX11で使う方法
トラックボールの名機と呼ばれるKensington Expert Mouse 5(EM5)をX11で使おうとしたが問題が発生した。まず、EM5には4つのボタンがあり、それぞれのボタンはデフォルトでは以下のように割り当てられている:.---------. .---------. | Middle | | Back | `---------' `---------' .---------....
View Article旅部まとめ
ライフログチャンネルと旅部チャンネルで行われた放送のまとめ。 # 放送日 行き先 キャスト 放送URL 1 2014/01/26 ドライブ 横山緑、力也、14 http://live.nicovideo.jp/watch/lv170879155 2 2014/02/28 名古屋 横山緑、本間智則、14、ふかみん http://live.nicovideo.jp/watch/lv170879155 3...
View ArticleLDRに代わる新しいRSSリーダーFeedponを開発した
はじめにLDRが終了するということで、FeedlyをバックエンドにしたWebブラウザ上で動作する新しいRSSリーダーFeedponを開発した。 現在の所FirefoxのアドオンとChromeの拡張として配布している。 他にモバイル版として、CordovaでパッケージングしたAndroidとiOSアプリがあるものの、ストアでは配布していない(お金がかかるので)。...
View Article