Canon MP600 に Bluetooth で接続

我が家のプリンターは Canon PIXUS MP600 です。
単体でコピーも出来るし、重宝しています。
もう4年も使っていますが、まだまだ現役です。
当時の Epson のプリンターはかなりインクを食っていたので、結局 Canon を選択した記憶があります。

この MP600 は、発売当初から USB コネクターに Bluetooth アダプターを挿入すれば利用できるようでしたが、あきらの携帯には Bluetooth が搭載されておらず、もっぱらデスクトップパソコンで作業をするため、必要性を感じることなく過ごしていました。

しかし、ノートパソコンの使用頻度が上がっており、現在は年賀状のシーズンです。
ノートパソコンや家族のパソコンからプリントしたい場合、現状ではあきらのデスクトップパソコンを立ち上げる必要があります。

最近は無線LAN対応のプリンターが多くなっていますが、故障したわけでもないので買い替えはしたくありません。
また、Bluetooth のトングルが千円程となっているため、最小の投資で済みます。

まず、プリンターに BT-MicroEDR2X を挿入しました。
ネットで MP600 が対応しているのは確認済みです。

パソコンは、lenovo ideapad S12 で試してみました。
しかし、テストページの印刷途中で印刷が停止してしまいます。
検索してみると、どうも Broadcom の BCM2046 ではプリンターに対応できないようです。

しかし、この時点では、我が家のプリンターとパソコンの Bluetooth チップのどちらが悪いか断言できません。
どのみち必要となるので、BT-MicroEDR1X を パソコン工房 米子店 で追加購入しました。

プリンターに BT-MicroEDR1X を挿入、パソコンに BT-MicroEDR2X を挿入し BCM2046 のドライバーを「無効」にして再テストです。

結果、テストページは問題なく印刷できました。
やはり、BCM2046 が好ましくないようです。

トラブルシューティング — Ideapad S12 に Ubuntu 10.10 をインストール

やっぱり若干のトラブルがあったのでメモ。

ideapad S12 以外にも該当すると思われます。

Atom N270 対策

キーやマウスの操作をしないと一定時間で固まる。

/etc/default/grub の該当部分を以下のように修正。

GRUB_CMDLINE_LINUX="nolapic_timer"

その後、以下のコマンドを実行。

$ sudo update-grub2

Broadcom BCM4312 対策

ドライバー acer-wmi が誤ってロードされるため、Network Manager で無線ネットワークとして検出されない。

/etc/modprobe.d/blacklist/blacklist.conf に以下を追加。

# Kernel bug
blacklist acer-wmi

以下のコマンドを実行。

$ sudo rmmod acer-wmi
$ sudo modprobe wl
$ sudo depmod -a

再起動する。

http://www.mail-archive.com/networkmanager-list@gnome.org/msg16485.html
http://www.mail-archive.com/networkmanager-list@gnome.org/msg16494.html
https://bugzilla.kernel.org/show_bug.cgi?id=16570

Ideapad S12 に Ubuntu 10.10 をインストール

Ideapad S12 に Ubuntu 10.10 をインストールしようとしましたが、10.04 で経験したのと同様に、操作をしていないとフリーズして、マウス・キーボードを操作すると復帰するというプチフリーズのような現象のため、断念していました。

でも、ググッてみるもんですね。

System freezes unless mouse/keyboard constantly used

全く同じ症状で、機種も一致。

起動時のカーネルオプションに、 nolapic_timer を追加して、無事動作しました。

しあわせ。

IS03 がやってきた

2010/11/26、嫁さんのケータイを変更して、我が家に IS03 がやってきました。

なんか、楽しくなりそうです。

設定とか、問題解決をアップしていこうと思いますので、お楽しみに。

Linux 上の Firefox で blockUI のオーバーレイが表示されるようにする

blockUI をテストしていて気が付いたのだが、Linux上のFirefoxでオーバーレイ(背景)が表示されない。

「blockUI Linux Firefox overlay」でググって、以下のページを見つけた。

http://www.mail-archive.com/jquery-en@googlegroups.com/msg69766.html

デバッグするにしても、動作を止めるコードを追加しないと出来ないので、正直助かった。

開発マシンを再構築

開発マシンとして使っていた Ubuntu 10.04 の仮想マシンの調子がおかしくなった。

PulseAudio が正常に起動しなくて、/var/log/syslog に延々とエラーを吐いていた。
ディスクアクセスが頻繁となるため、デスクトップのレスポンスが悪くなるぐらいだった。

パッケージを再インストールしたり、VMwareの設定を変更してみたりしたが、改善されないため、別マシンを新規作成し、引越しを行った。
結局、動作確認を含めて3時間かかった。

原因として考えられるのは、VMware Player のアップデートぐらいなんだが…

結局、原因不明…

ChromeOS をビルド

日経Linux 10月号を参考に、ChromeOS をビルドしてみた。
もの好きしかやってみないとは思うのですが、少々記事が雑でした。

まず、図4の?ですが、exit の前に以下のコマンドが必要でした。

# chmod +x /usr/bin/repo

同じく図4の?、改行マークが有りますが、実際は1行です。

$ repo init -u http://src.chromium.org/git/manifest -m minilayout.xml

それから図5の「依存関係にある開発パッケージを自動インストール」の次に、文章中にある以下のコマンドを実行します。

$ ./enter_chroot.sh

初心者の方は最後まで辿り着けないかもしれません。
せっかく ChromeOS の現状がわかる良い記事なのに残念です。

その後、”x86-generic” を “x86-geniric” とタイプミスしてはまったりしましたが、それ以外は順調に作業できました。

けっこう時間が必要なので、仮想マシンを用意して半分放っておくのをお勧めします。
推奨環境を構築出来ますし、安心して別の作業を行えます。
あきらは仮想マシンを 4CPU、メモリ2GB、HDD80GB、Ubuntu 10.04 LTS AMD64 で作成して実行しました。

必要な時間は、合計4時間ぐらいだと思います(半分放っておいたので正確な時間はわかりません)。
Lenovo IdeaPad S12 の USBブートで試してみたいと思います。

PHP で、なぜわざわざ自前で HTML をパースするのか

JAPRO Template Engine の PHP 版では、わざわざ自前で HTML をパースしています。
それにはこんな理由があります。

loadHTML/loadHTMLFile/saveHTML/saveHTMLFile

タグのインデントなど、空白文字が無視されてしまいます。
正確なパースとは言えません。
HTMLを書いた人の意図を無視することは良い事とは思えません。
saveHTML が出力する HTML もゴチャゴチャです。
XHTML は対応出来ないようです。

load/loadXML/save/saveXML

HTMLを読み込ませると、href/src 属性に & がある場合にワーニングとなります。
scriptタグの中も & があるとワーニングとなります。
コメントの終了は –> の前に空白文字がないとワーニングとなります。

とにかくワーニングだらけになります。無理があります。

結局自前で

HTMLの実情に合ったパースを行うには、結局自前でパースする必要があります。
出力の際も自分でツリーをたどって表示する必要があります。

自前でパースする際のヒント

mb_internal_encoding( ‘UTF-8’ )
mb_regex_encoding( ‘UTF-8’ )
mb_regex_set_options( ‘pr’ )

テキスト部分/タグ/残りに分解する正規表現
A(.*?)(<.*?>)(.*)z