NetBSD

FYI: Audio changes in recent years

tech-kern: FYI: Audio changes in recent years tech-kern: Re: FYI: Audio changes in recent years TAMURA KentさんがやってるNetBSDのオーディオ関連の発表資料。メモ。

なぜ vi のカーソル移動は hjkl に割り当てられたか

なぜ vi のカーソル移動は hjkl に割り当てられたか - swk's log 知りませんでした。しっかし、hjklでカーソル移動なんて変態かーと思ったのも、もう遠い昔です。今では指に染みついています。というかカーソルキーでカーソル移動なんてさせないでください(←…

MBRの逆アセンブル

MBRを逆アセンブルしてみました(src/sys/arch/i386/stand/mbr/mbr.Sを見ろという気もしますが)。ポイントは、objdumpの-b binary -m i8086オプションです。 $ sudo dd if=/dev/wd0d of=mbr bs=512 count=1 $ objdump -b binary -m i8086 -D mbr参考: http://…

C言語で関数のエイリアス

後から関数の実装を置き換えたいような場合に、その関数のエイリアス(別名)を定義して、前もってエイリアスでプログラムを組んでおくと置き換えの手間が少なくなります。C言語で、関数のエイリアスを実装するにはどのような方法があるでしょうか。ちょっと考…

日本語文字コードの自動判別方法

http://pub.cozmixng.org/~the-rwiki/rw-cgi.rb?cmd=view;name=%A4%BF%A4%E0%A4%E9%3A%3A%C6%FC%CB%DC%B8%EC%CA%B8%BB%FA%A5%B3%A1%BC%A5%C9%A4%CE%BC%AB%C6%B0%C8%BD%C4%EA によるとGaucheのものが一番よさそうです。ということで、Gaucheの日本語文字コー…

strlcpy(3)の戻り値

トラックバックいただいたので補足。 strlcpy(3)は、(strncpy(3)と違って)生成しようとした文字列の長さを返してくれます。これを利用して、生成しようとした文字列が途中で切られてしまったかどうか判定することができます。 以下、使用例をNetBSDのマニュ…

strncpy(3)よりもstrlcpy(3)

strncpy(3)は、(本来文字数を指定するところに)ついうっかりバッファサイズを指定すると、不正なC文字列になってしまうので要注意です。やっぱりstrncpy(3)よりもstrlcpy(3)の方が、直感的なAPIでわかりやすいですね。でも*BSD以外でもstrlcpy(3)って使えた…

Firefoxのキーバインドをカスタマイズ

僕はWWWブラウザとしてFirefoxを使っているのですが、Firefoxは検索のショートカットがCtrl-Fでいまいち馴染めませんでした。やっぱり検索は、Ctrl-Sじゃないと。 ということで、h j k l カスタマイズを参考にCtrl-FとCtrl-Sを入れ換えてみました。なお、僕…

Debugging Kernel Problems

http://www.lemis.com/grog/Papers/Debug-tutorial/tutorial.pdf via: tech-kern: Re: kernel debug FreeBSD、NetBSD、OpenBSDの(主にカーネルの)デバッグ方法について詳細に説明しています。こういうデバッグに関する文書ってあまり見かけません。貴重な資…

[D!]ボタンではてなの記法を使いたい #2

id:wata_dさん、コメントありがとうございます。エンバグしてました(^^;; id:wata_dさんのおっしゃる通り、サーバサイドでこの処理を行ってくれれば一番スマートに解決するのに… でも、どこにどう意見したらいいのかな。んー? id:wata_dさんのコメントを反…

[D!]ボタンではてなの記法を使いたい #1

id:wata_dさんの2005-07-28を見て、リンクだけでも[D!]ボタンではてなの記法を使うようにhatenabarを改造してみました。多少は汎用的になったかしら。 以下、hatenabarの改造手順です。 (1) Firefoxでもっと便利に使おう - はてなよりhatenabarをインストー…

TACさんとこの音源を聴きたい #2

ダウンロード用のスクリプトをまとめて、HTTPの場合とMMSの場合で共通に使えるようにしました。 ファイルasfget #!/usr/pkg/bin/ruby18 # -*- ruby -*- # $Id: asfget,v 1.1 2005/07/31 14:28:58 s-tanaka Exp $ require 'open-uri' require 'uri' def get_h…

TACさんとこの音源を聴きたい #1

いろいろな方からTACさんのとこNike Air Max Billigt Online | Chie Mihara Rea Outlet Online Sverigeの音源が素晴しいと伺っていたのですが、残念ながらストリーミングの形式で置かれているため、NetBSDな僕の環境では簡単に聴けません。 一昨日もアイズカ…

fparseln(3)もどき #2

id:ha-tan:20050727のなかださんのコメントを見て、クラスIOはEnumerableをインクルードしているとはじめて知りました(ソースは以下)。 io.c ... 5311 void 5312 Init_IO() 5313 { ... 5353 rb_cIO = rb_define_class("IO", rb_cObject); 5354 rb_include_mo…

fparseln(3)もどき

NetBSDのfparseln(3)は、コメントや継続行を処理して一行を返す関数です。この関数、設定ファイルとかの読み込みに結構便利。 Rubyでもfparseln(3)を使いたいなと思って、fparseln(3)ぽい機能をRubyぽく実装してみました。 以下はobsoleteです。id:ha-tan:20…

pkgsrcアップデート

id:ha-tan:20050607の手順でpkgsrcをアップデートしました。面倒すぎて、デイリーで行う気にはなりません。

libaoのplugin

いつの間にかaudio/mpg321で $ mpg321 hoge.mp3 No default libao driver availableのようなエラーが出るようになって、mp3が聞けなくなった。 うーん、いつの間にかaudio/libaoのpluginが別のパッケージになっていたのね。 ということで、audio/libao-sunを…

malloc(3)のチューニング

malloc(3)のチューニング方法はちょっと変っていて、mallocの設定内容をリンク先したシンボリックリンクを/etc/malloc.confに作成する(環境変数でも同じ設定ができるけど)。 $ man 3 malloc ... FILES /etc/malloc.conf symbolic link to filename containin…

プログラミングモードでのカーソル移動

http://www.lostway.org/~tko/doc-jp/cc-mode.htmlより、Emacsでプログラミングする時のカーソル移動方法をメモ。とりあえずこれだけ覚えておこう。 M-C-a beginning-of-defun 関数定義の先頭へ M-C-e end-of-defun 関数定義の終わりへ M-C-u backward-up-li…

wgetのプロキシ設定 #2

wgetでプロキシの設定のON/OFFを制御するには。 方法1。wgetrcにuse_proxy = on(またはoff)と書く。 方法2。wget実行時のオプションで、-Y on(またはoff)を指定する。

wgetのプロキシ設定 #1

wgetでプロキシの設定を行うには。 方法1。wgetrcにhttp_proxy、ftp_proxyを設定する。こんな感じ。wgetrcは、pkgsrcでインストールしている場合/usr/pkg/etc/wgetrcにあると思う。/usr/pkg/etc/wgetrcを~/.wgetrcにコピーしてもOK。 # You can set the defa…

NetBSDで暗号化ディスク

暇を見付けて読むこと。> 自分 The CryptoGraphic Disk Driver

wgetでHTTPヘッダを表示

文字化けとかWebで何か問題が起ったときには、HTTPヘッダを参照することが多い。 wgetの場合、-SオプションでHTTPヘッダを表示することができる。 $ wget -S http://d.hatena.ne.jp/ha-tan/ --07:48:15-- http://d.hatena.ne.jp/ha-tan/ => `index.html' d.h…

/usr

UNIX 用語 由来/読み方辞書 version 1.6 (Feb 13 1995)によると、/usrはUser Service and Routinesの略みたい。 ふーん。USeRじゃないんだ。

Re: GmailFS for NetBSD??

netbsd-users: Re: GmailFS for NetBSD?? mount_portal(8)なんてあるんだ。知らんかった。 面白そう。ひまになったら調べること。

重複した機能

NetBSDはカーネルに加えてコマンドなどのユーザランドも含めた形で配布しているんだけど、そのわりにあまり重複した機能が入っていないように思う。無駄がないから、基本的にはこれはいいことだと思う。例外としては、MTAでsendmailとpostfixが入っているく…

カーネルのオプション

NetBSDのカーネルのオプションの調べ方。 まずはマニュアル。 $ man 4 optionsあとはサンプルのコンフィグファイルのコメント。/usr/src/sys/arch/i386/conf/GENERICとか。 Linuxにはmake menuconfigとか設定用のツールがあるんだけど、慣れると別に設定ファ…

CとC++を判別するコード

id:parasporospa:20050705 そうか。Cの場合にはsizeof('a')はsizeof((int)'a')と解釈されて、C++の場合にはsizeof('a')はsizeof((char)'a')と解釈されるのですね。なるほど。 ところで、プログラム中で動的にCかC++か判定する必要があるのは具体的にどういう…

refe.el

今までRubyのリファレンスマニュアルを見るのにコマンドラインのRefeを使っていたんだけど、Emacsのインターフェースをインストールしてみた。 インストール手順は、以下のリンク通り。 プログラミング言語 Ruby リファレンスマニュアル ついでにttyrecで検…

uimのカスタマイズ

uimでSKK使ってるんだけど、かなモードのときに()などの記号を半角で入力したい(デフォルトは全角)。 ということで、以下の内容の~/.uimファイルを作ってカスタマイズしてみた。 ; -*- scheme -*- (require "japanese.scm") (set! ja-rk-rule (append '(((("…