タブ(TabPage)毎に異なるコンテキストメニューを開く

C#

ここには、タブをマウスの右ボタンで押し、そのボタンを離したときにタブに応じたコンテキストメニューを開くC#のソースコードを載せてある。このコンテキストメニューの開き方はVisual Studioでのそれに近い。TabPageに直接コンテキストメニューを設定する…

urxvtで任意のキーでセレクションのペースト

urxvt-unicode (urxvt) でのセレクション(PRIMARY)のペーストはShift-Insertに割り当てられている。このキーバインドはホームポジションから遠く押しにくいので、他のキーバインドでペーストできるようにする。 問題点 バージョン9.07のurxvtは、PRIMARYのペ…

VMware Server 2.xのサポート期限は2011/06/30

VMware Server 2.xのサポート期限が近い。1.xに至っては既に終了している。 Version 2.x 2011/06/30 Version 1.x 2010/03/23 http://www.vmware.com/support/policies/lifecycle/general/index.html#policy_server以下によれば、VMware Serverは終わるから、…

窓使いの憂鬱使いの憂鬱

Windows以外のOSを使おうとする時の最大の障壁は窓使いの憂鬱が無いこと。 FreeBSD上のXで使える窓使いの憂鬱的なソフトはあるのか。 私家版 窓使いの憂鬱 Linux & Mac (Darwin) 対応版 http://members.at.infoseek.co.jp/hattoushin_uma/ configureできない…

DXライブラリで任意のフォントを使用する

はじめに ここではDXライブラリでフォントファイル(.ttfなど)をWindowsにインストールせずそのまま利用する方法を紹介する。この方法では既存のDXライブラリにある文字列描画関数をそのまま利用する事ができる。 目次 背景 準備 方法 仕組み まとめ 参考 背…

PS3にFedora 12インストール

Fedora 12のインストール PS3に入れてたFedora 10がEOLになってた。Fedora 12へfedora-releaseパッケージでアップデートしたら、なんか画面が出てこなくなってしまった。調査するのは面倒なので新規にインストールしてしまおう。基本的にここの手順に従って…

TortoiseSVN 1.6.6でSSH接続の時ポート指定したい

svn

以下の様なURLの中にポート番号を指定する方法では駄目 svn+ssh://example.com:12345/path/to/repo こちらの方法でできた。 C:\Documents and Settings\[ユーザーID]\Application Data\Subversion\configファイルの[tunnels]セクションに次のように記述する…

FreeBSD 8.0でNTFSを読み書きする

システムに標準で入ってるmount_ntfsでは書き込みに色々と制約があるので他の方法をとる。 portsにあるsysutils/fusefs‐ntfsを使えばかなり自由に読み書きできる。ja_JP.UTF-8な環境において日本語のパスも問題なく扱える。 インストール手順 sysutils/fusef…

プログラミングGauche p.226 ストリームによるフィボナッチ数列の速さ

ストリームは遅延評価されるリスト。遅延評価も興味あるけど、この本「プログラミングGauche」では、索引を見る限り、ここでしか遅延評価の話は出てこないようだ。さて、ストリームによるフィボナッチ数列が出てきた。フィボナッチ数列のN番目の数を得る計算…

FreeBSD/amd64にFlash10インストール

flash10のインストール FreeBSD Daily Topics 2009年8月19日 ≪Tips≫Flash10をインストールして使う方法インストール、有効化はうまくいったが、日本語テキストは□で表示されてしまう。 trouble shootingに載ってる方法で正しく表示されるようになった。 ~/.f…

ヘッドフォン有効化

FreeBSD/amd64 8.0-STABLEをマザーボードGA-EP45-UD3R上で動かしている。サウンドはオンボードサウンドを使ってるのだけど、PC全面のヘッドフォン端子にヘッドフォンを挿しても音が出ない。ググってみるといい情報があった。 FreeBSD snd_hdaマニュアル邦訳 …

FreeBSD/amd64をデスクトップ向けに細かい事色々

デスクトップでの環境を整えるためにしたこといくつか。

FreeBSD/amd64 8.0-RELEASEにNVIDIA Driver 195.22ベータ版インストール

もう結構前だけど、NVIDIAからFreeBSD/amd64向けドライバのベータ版がリリースされた。FreeBSD/amd64に触れてみたかった事もあって、このドライバをインストールしてみた。 FreeBSD/amd64 8.0-RELEASEが既にインストール済みのシステムにX.orgをインストール…

自鯖のデータストレージが死んでた

データストレージはmdを使ってRAID 1構成にしてある。HDD 2台のミラーリングだ。 このあいだ、自鯖の電源のファンが異常にうるさくなったから、ファンの固定が緩んでないか確認した。その時にHDDのケーブル外したせいかも。 何故か片方のHDDのみ認識されてい…

プログラミングGauche p.112 delete-1についての練習問題

未だnonLisp脳なせいか、ヒント読んでも分からない。 ごり押しで下のコードができた。一応テストは通るし、末尾再帰なので速い。 (define (my-delete-1 elt lis . options) (define orig-lis lis) (let-optionals* options ((cmp-fn equal?)) (define (loop …

FreeBSDにGoogleのプログラミング言語Goをインストール

Go公式サイトのインストール手順のページには書いてないけれど、FreeBSD向けのGoもビルドできるようだ。 フォーラムにそれについての書込があった。 Go build instructions on FreeBSD リポジトリのsrc/pkg/syscallに、linuxとかの他にfreebsdの名前がついた…

Portsでのダウンロードを速くする

FreeBSD – Download ports simultaneously with multiple connections | Scratching My Needs http://scratching.psybermonkey.net/2009/09/30/freebsd-download-ports-simultaneously-with-multiple-connections/とっても速くなった。 portupgradeでも問題…

aMSN ver.0.98.1にバージョンアップ

Yコンビネータと遭遇

Schemeへの道でScheme勉強中のこと。 9. lambda式の最後の 「[参考]lambda式による再帰呼び出し関数」がさっぱり分からなかった。 けれど糸口を発見。 (define Y (lambda (f) ((lambda (m) (f (lambda (a) ((m m) a)))) (lambda (m) (f (lambda (a) ((m m) a…

末尾再帰による最適化の効果

Schemeで簡単なべき乗関数を書いて、末尾再帰の効果を実感してみる。Schemeの処理系にはGaucheを使う。 Schemeとは?末尾再帰とは? Schemeは関数型プログラミング言語LISPの方言の一つ。 末尾再帰は、関数末尾での再帰呼び出しの事。最適化により単純なルー…

FreeBSD上のvimでneocomplcacheを使う

neocomplcache vimで使える非常に強力な補完環境 http://github.com/Shougo/neocomplcache/blob/master/presen/neocomplcache.txt インストール vimがインストールされていて、ホームディレクトリに.vimディレクトリがある事を前提とする。上記URLのリファレ…

何故メンバ関数はどのインスタンスにもアクセスできるのか

C++

メンバ関数は同クラスのどのインスタンスから呼ばれても、そのインスタンスを操作することができる。でも、メンバ関数には、どのインスタンスを操作するかという記述はない。 どうなってるの? 答え C++ではクラスのインスタンスは、そのメンバ関数を呼び出…

最初の一歩はHello world

#include <stdio.h> int f(char *p){ return *p && (f(p+1),putchar(*p)); } int main(){ return f("!dlroW ,olleH"); } C言語なら俺に聞け(入門篇) Part 53 このコードの流れが分かる様になるのに必要な知識は ポインタ 文字列の終端文字 &&の振る舞い 再帰関数 </stdio.h>…

IOCCC 1987 "unix"

みんな大好きIOCCC。 その中でも有名な、1987年David Korn制作のunix.c。 http://www0.us.ioccc.org/1987/korn.cこれの丁寧な解説ページ。 http://kzk9.net/column/ioccc.html以外と簡単な内容だったけれど、少し戸惑ったところを書いておく。

GnuPGのインストール

それぞれのバージョンは以下のとおり FreeBSD 7.2 GnuPG 2.0.13 portsからsecurity/gnupgとsecurity/pinentry-cursesをインストールする。このGnuPGのバージョンは2系*1なので、pinentryもインストールしないといけない。securityカテゴリにはpinentryの名前…