5.1-RELEASE。さっそくMURAMASAをupdate。

portupgradeをportsからインストールすると bash でパッケージリスト名の補完をしたいときの 記述サンプルもインストールされる。/usr/local/share/examples/pkgtools/bash/complete.sample
しかし、これを書いてもイマイチうまく行かないので、pkg_infoに限定して自分で書いた。

_pkg_func()
{
local cur
COMPREPLY=()
cur=${COMP_WORDS[COMP_CWORD]}

COMPREPLY=( $( \ls /var/db/pkg | grep $cur) )

return 0
}
complete -F _pkg_func pkg_info

こんなかんじ。(TABが出ないのでsourceみて。)
'ls' じゃなくて '\ls' なのは個人的に ls を ls -F にaliasしているから。最後に'/'がついてしまう。
'grep $cur' を 'grep ^$cur' とした方が補完らしいかもしれないけど、
間違えて ja- なしでタイピングしたときのことを考えると '^' はなしの方が便利かも。
pkg_info | grep するよりむちゃくちゃ速い。
これからは pkg_info -I が標準かな。
便利便利。なれてきたら上記サンプルを参考にいろんなコマンド用に拡張してもいいかも。
pkg_deleteも同じ方法でいいはずなので、こっちでも実行したかったら最後の行を
complete -F _pkg_func pkg_info pkg_delete
とすればいいはず。でも、ちょっと怖いからやめておこう。


pkg_info の補完について平田君よりコメントをもらった。
'-なんちゃら'がうまくとおらないので grep -- にした方がいいこと。
そして、引数を与えないとgrepが怒るそうなので、結局

if [ -n "$cur" ];
then
COMPREPLY=( $( \ls /var/db/pkg | grep -- $cur) )
else
COMPREPLY=( $( \ls /var/db/pkg ) )
fi

となった。勉強になりました。
mewでacroreadをデフォルトにするにはmewのsite-lispの中のmew-unix.elから
設定部分を抜き出してきて、xpdfの部分をacroreadにかえて.mew.elに書けばおっけ。
word,exelのファイルを見るにはwv,xlhtml,w3m,emacs-w3mがインストールしてあれば buffer上で見れるらしい。
んが、これはいやなので、外部プログラムを起動するようにしたい。
wvHtmlもしくはxlhtmlにファイルを渡してhtmlに変換。これをoperaで見る。
たとえば xlsopera というshell scriptで

xlhtml $1 > $1.html
opera file:$1.html
rm $1.html

としておいてやればいいかも。
んで、表示したいファイルのところでC-cC-y、コマンド名 xlsopera [CR]
いちいちoperaを起動するのはちょっといやだけどしょうがないか。
wordファイルはwvHtml [inputfile][outputfile]なので注意すること。
しかも、カレントディレクトリじゃないと怒るようなので、

% cat docopera
#! /usr/local/bin/bash
DIR=`echo $1 | awk -F'/' '{printf("/%s/%s",$2,$3)}'`
FILE=`echo $1 | awk -F'/' '{print $4}'`

cd $DIR
wvHtml $FILE $FILE.html
opera file:$1.html
rm $1.html

何て風にしてある。(もっとスマートな方法がありそうだけど)
本当はacroreadみたいにデフォルトでこのコマンドを実行するようにしたいんだけど、 まだ試行錯誤中。
[以下、後日追記]
何か勘違いしていただけのようで、.mew.elに
(setq mew-prog-msword '("docopera" () t) )
(setq mew-prog-msexcel '("xlsopera" () t) )
と設定すればおっけだった。
Athlon700のportsをアップグレード
平田君の情報より、pekwmが1.3にバージョンアップしたそうな。
configファイルの書式が変わったのが痛い!
でも、キーボードによる操作の幅が広がったのでよしとしよう。
themesもさらに細かく設定できるようになったようです。
tarファイルがいつものところになかったので、google&flashGetでget。
DocAppを使うには harbour が必要。これはコンパイル時にオプションが必要。
make -DWITH_HARBOUR でOK。

xemacs上のc-mode(cc-mode package)の設定で四苦八苦。
インデント機能が賢くなったのはいいんだけど、好きなところでTABが 打てなくなってしまった。
何かあるんじゃないのぉ、とあれこれやってみたら、 M-i (tab-to-tab-stop) で可能なことが判明。
これでよしとしよう。

pkg_versionというコマンドが便利そう。現在インストールされているpackageが 最新版かどうかをチェックしてくれる。つくろうかと思ったんだけど、やっぱりあった...。
pkg_version > checkout
なんて使い方が良さそう。
pkg_version -c だとアップデートに必要なcommandを出力してくれる。@_@

acroread5が5.07にバージョンアップした。セキュリティパッチと思われる。
ghostscriptも7.07にバージョンアップした。セキュリティパッチと思われる。

xemacsを ja-xemacs-devel-mule-canna-21.5.b13 にあげた。(pkg_version使用)
カーソルの色が派手になったのでびっくりしたがこれはDarkSlateGray4にしてやれば いいでしょう。
読み込んだ日本語テキストの漢字が化けるようになったので、
(set-file-coding-system-for-read 'euc-japan)
を設定ファイルに追加。
ngもja-ng-canna-1.4.4にあげた。
ja-xemacs-devel-mule-canna-21.5.b13 があやしい。
どうにもいやだったので、少しバージョンを戻した。
pkg_delete ja-xemacs-devel-mule-canna-21.5.b13
pkg_delete xemacs-devel-mule-21.5.b13
pkg_delete xemacs-packages-8.1
pkg_delete xemacs-mule-packages-3.5
他のマシンから少し前のportsを持ってくる。(あってよかった...。)
% tar zcvf xxx.tgz ./editors/xemacs-devel-mule ./editors/xemacs-packages ./editors/xemacs-mule-packages ./japanese/xemacs-devel-*
% コピー先で同じものを別名に退避してから/usr/portsで展開。
% cd japanese/xemacs-devel-mule(21.4.12)
% make install clean
OK。怪しさが消えた。現バージョンは以下の通り。
ja-xemacs-devel-mule-canna-21.4.12
xemacs-devel-mule-21.4.12
xemacs-packages-7.0
xemacs-mule-packages-3.4
set-file-coding-system-for-readもコメントアウト。

ngでも日本語入力がうまくいかず慌てたけど、これはWindowsと キーがかぶっているだけだった...。-_-;;;

xemacs起動後の.egg-wnn7.elの読み込み時にwarningが出て遅いのは ローマ字変換定義テーブルに二重定義があったためだった。

平田君にdvipdfmなんてのを教えてもらった。設定方法も教えてもらった。 これいいかも。
2003.7
DELLノートも pkg_delete -a でばっさりクリーンアップ中。
ついでにkde3,japanese/kde3-i18nあたりもいれてみる。おもしろいけど日本語入力ができない...。
ウィンドウマネージャにたいしてショートカットの設定がわからない...。
-> あった!コントロールセンターの「地域およびアクセス補助」の中だった。globalなバインディングまで変えられるのはさすが。

KDEWM=wmaker
export KDEWM
なんてすることで wm を変えることはできるけど、これはちょっとおもしろくないしなぁ。

xemacs でマウスからのyankがクリック位置になるのがいやだなぁ、
と思い、mouse.elをみて(setq mouse-yank-at-point t)まで調べたんだけどどうもうまくいかない。
#help-for-helpの'k'でマウス中クリックで場所はわかるよ。
hookとか書いてみたけど失敗。webで調べてみたら、これはcustomizeなんだそうな。
メニューバーから見てみたらOptions,Keyboard_and_Mouseの下にそれっぽいチェックマークが...。;_;

マウスのペーストと、keyboardのyankを統合したい人は こちら。 便利です。

jornada690からWLI-PCM-L11GPを使って無線LANへのアクセスが可能。
ドライバはWLCE_406.exeを使用。ドライバの展開もドライバのインストールも母艦側からなので注意。
sshなcommandがなく、portforwardをつかうしかなさそう。
このため、23番ポートはあけておかないとjornadaからtelnetできない。
そこで、サーバー側のhosts.allowをちゃんと書いてportforward経由のlocalからの telnetdへのアクセスだけ許可を出すようにした。
teratermの設定で auto cursor tracking ははずしたら、普通に使えた。
mew3.3リリース。
インストール先を若干変えた。
platexなどで、styファイルの検索ディレクトリを追加したい場合、
TEXINPUTS変数を直接指定するのではなく TEXINPUTS_platex のように
うしろにコマンド名がついた変数を設定する。
すると、実行時にその環境変数がTEXINPUTS変数を上書きして実行される。
ちなみに $TEXMF/web2c/texmf.cnf が設定ファイルだが、
この中ではTEXIPUTS.platexのように'.'で指定されているけど環境変数では'_'を使うそうだ。
#たまたま偶然'_'で間違えて書いたら動いてしまったんだけど...。
よって、texmf.cnfファイルの中身を見て、希望の環境変数を探して、 それにpathを加える形で修正すればいいだろう。

dvipdfmでちゃんとepsを表示したかったら、
\usepackage[dvipdfm]{graphicx}
\includegraphics[size]{filename}
をつかいましょう。
filenameに.psなどを省略できないなどちょっと癖がある模様(2005.3追記)
web上で見つけたdvipdfmのトラブルシューティングは こちら

realpath.cにsecurity hole発見。
OSをアップデートした。
さらに/usr/local/bin,/usr/X11R6/binで file * | grep static を実行。
statically linkedなものを再コンパイル。
どのpackageによってインストールされたバイナリかを調べるには、/var/db/pkg/*/+CONTENTSを grepでチェック。
なぜかez3mがコンパイルエラーが出て失敗したけど、ま、気にしない。さくっと削除。
rpmは再コンパイルでdynamically linkedになった。

DELLノートマシンで、起動時にCDドライブが認識されない。
いままでは起動時にメディアをドライブに装着していれば認識された^^;んだけど、 全然だめになってしまった。4stableにあげた辺りが怪しい。
logに出ていたエラーメッセージをたよりにwebで調べてみたら、
どうもDMAなドライブと思って(いや、ほんとはそうだとおもうけど)失敗するらしい。
PIO4だと指定する必要あり。;_;
/boot/loader.confにhw.ata.atapi_dma="0"を追加すればOK。
いままでCDプレイヤーで一時停止を解除するとその曲の先頭から再生されるという問題に 悩んでいたんだけど、何とあっさりと解決してしまった。@_@
ということでPIOらしい。-_-;;;
->
4-StableにあげたらまたしてもCD-RWが見えなくなった。
んが、loader.confの設定をはずしたら解決した...。ちなみにPIOだった。
一時停止も問題なし。

portsに mozilla-firebird があるのを発見。ports版のperlが必要だそうなので、
ja-perl5がインストールされているAthlon1500でコンパイルしたら稼働した。
一番最初は firebird -ProfileWizard などとして profile を作成する必要あり。
んが、なぜか肝心のDELLノートはcoreをはいて止まる。;_;
mozilla-develも止まる。-_-;
覗いてみたら(debugオプションつけて実行)gtkのライブラリ辺りでとまるようだ。
そういえば以前linux版のfirebirdをインストールしたらgtk2のライブラリがないと 怒られたっけ。というわけで mozilla-gtk2 をトライ。-> 成功。
でも、マウスジェスチャー使えないなぁ。
平田君がlinux版のopera7がいいって言ってたなぁ。www.opera.orgから linux用static-qtな バイナリを持ってくる。
*Athlon700マシンで* install.sh を立ち上げて ~/bin/FreeBSD, ~/lib/share/opera, ~/lib/share/doc/operaにインストールしてみる。さくっと動いた。よいです!:)
tar.gzファイルを /usr/ports/distfiles に移動。
-> portsのoperaが7.20bにアップ!こっちにかえる。
なぜかHHKProが手元に...
web(http://people.freebsd.org/~maho/USB/hid.html)で調べたところ、 接続後手動で kbdcontrol -k /dev/kbd1 < /dev/console を
はずすときに手動で kbdcontrol -k /dev/kbd0 < /dev/console を
おこなえばとりあえず使える。んが、usbd.confの記述がうまく反映されない。
デバイス名が HHKB Professionalじゃだめなのかなぁ。
usbdevs -v の結果からするとこれで良さそうなんだけどなぁ。
-> 起動時に最初からUSBキーボードを接続しておけば大丈夫の模様。 キーリピートも問題なし。

Athlon700マシンをアップデート 4.9-PRE になった。

openssh にsecurity hole発見。めんどうなので今回はパッチで対応。

何かいろいろ出たので、Athlon700,PentiumII400,mebiusを一気にアップデートx2

Cのプログラム中で'For'も色を変えたい。
いろいろやったけど結局ローカルにfont-lock.elをコピーして編集。ヨワヨワである。

2003.10
Linux版のOpenOffice.org.1.1をインストール
起動スクリプト soffice の先頭あたりに
export LANG=ja_JP.eucJP
export XMODIFIERS="@im=kinput2"
と書けば日本語入力もできることが判明。
wordファイル、exelファイルに対してmewから呼び出すプログラムをこっちに変える。
良くわかんなかったので、swriter,scalcの絶対パスで指定。

デバッガdddをインストール。
しかしASTEC-X上だとフォントの関係か表示がずれてしまい、使い物にならないことが判明。