2017-11-21

マタイ 7:13-14

「狭い門から入りなさい。滅びに通じる門は広く、その道も広々として、そこから入る者が多い。しかし、命に通じる門はなんと狭く、その道も細いことか。それを見いだす者は少ない。」

2017-11-20

Firefox Quantum

Webを閲覧するためにFirefoxを利用していますが、先日新しい更新が出ているという通知が出てきました。更新を適用したところFirefox 57.0になりました。Firefox Qutantumと呼ぶことになったようです。画面の構成も変わりましたし、内部的にも大きく変更されているようです。

ところが、これまで利用していたアドオンが使えなくなってしまいました。日々の作業の根幹に関わる機能なので、ちょっと困っています。
  1. iMacros
  2. It's All Text!
  3. TiddlyWiki for Firefox
これらのアドオンがFirefox Quantumにも対応してくれるのを待つか、代替アドオンを探すことになるでしょう。

2017-11-14

CANNAの終焉

自宅には365x24電源を落とさないで利用しているノートPCがあります。ハードウェアは昔々のGateway製でCPUはPentium III 450MHzです。旧いCPUですが、CPUの演算性能に依存するようなことはしていないので、別に不満はありませんでした。OSはFreeBSD/i386 10.3を利用しています。

ところが旧過ぎるマシンだとOSやアプリケーションを最新化できなくなってきました。例えばOSのカーネルをFreeBSD/i386 11に変更するとブート時にpanicしてしまいます。またportsでインストールしているアプリケーションを更新しようとすると、コンパイル中にSSE2が使えないというエラーが出てしまうようになってきました。そろそろマシンを更新する潮時かもしれません。ジャンクでLenovo ThinkPad Edge 530cを購入しFreeBSD/amd64の環境を構築し、FreeBSD/i386の環境を移行することにしました。

以前はportsを自前でコンパイルしていたのですが、オプションをデフォルトから変更することは滅多にないし、コンパイルする時間もかかるので、今後はコンパイル済のパッケージを使おうと思っています。FreeBSD/i386において使っていたパッケージをFreeBSD/amd64でもインストールしておきました。

ここで気になったのがemacsです。以前は自前で漢字変換が出来るようにするためCANNAオプションを有効にしていました。ところがコンパイル済のパッケージでは(予想はしていましたが) CANNAオプションが無効になっています。
emacs25-25.3_1,3
Name           : emacs25
Version        : 25.3_1,3
Installed on   : Tue Nov 14 13:27:37 2017 JST
Origin         : editors/emacs
Architecture   : FreeBSD:11:amd64
Prefix         : /usr/local
Categories     : editors ipv6
Licenses       : GPLv3+
Maintainer     : ashish@FreeBSD.org
WWW            : http://www.gnu.org/software/emacs/
Comment        : GNU editing macros
Options        :
        ACL            : on
        ALSA           : off
        CAIRO          : off
        CANNA          : off
(以下略)
CANNAオプションを有効にしてコンパイルすることも可能であることは承知しています。しかしCANNA自体が過去のものですし、Windows上で端末エミュレータを利用していることを考えれば、日本語変換はWindowsに任せても構わないような気がしています。

muleの頃からemacsではCANNAを利用してきましたが、どうやらCANNAの時代は終焉を迎えているようです。

2017-11-13

Windows10とNetBSDの同期にforfiles.exeとcpioを使う

Windows Vistaがインストールされていたdynabook SS SX/15AをNetBSD/i386に入れ換えて使用しています。まだOSがVistaだった頃から、Windows10が入っているデスクトップPCの%HOMEPATH%\Documents以下をdynabook側にコピーして、外出先でも自宅のPCと(ほぼ同じ)ファイルが参照できるようにしていました。当時はお互いにWindows PCですから、ネットワークドライブとして繋げば、あまり苦労もせずにファイル同期が可能でした。

OSをNetBSDに置き換えたことで、Windows10側のファイルを如何にしてNetBSD側に持ってくれば良いのか方式を検討することになりました。考え方としては、Windows10側を動作主体にしてNetBSD側にファイルを送り付けるか、NetBSD側を動作主体としてWindows10側からファイルを引き込むか、いずれの方式にするか考えなければなりません。OSの標準的な機能だけを使って実現しようとすると、NetBSD側を動作主体にして、NetBSD側からWindows10側のディレクトリをリモートマウントすることで、処理を全てNetBSD側でおこなう方式にしました。

まず最初に試したのは、NetBSD側でmount_smbfsを使ってWindows10側の%HOMEPATH%\Documentsをマウントし、rsyncで同期させることでした。しかし試してみると、ネットワークが切れたり、途中で処理が固まったり(情報が出ていないので何が問題なのか分からない)、上手くいきません。

次に考えた方式は、NetBSD側でrump_smbfsを使いファイル名の文字コード変換をさせてWindows10側の%HOMEPATH%\Documentsをマウントし、 tarでファイルをコピーしてみました。ひとまず問題なく全てのファイルをコピーすることができました。しかし処理速度が異常に遅く、ほぼ24時間かかってしまいました。いくらなんでも遅すぎますし、CPUは99%程度はアイドル状態です。NetBSD側が動作の処理を主導して、Windows10側のディレクトリを検索しようという発想が良くなかったのかもしれません。

次に考えた方式では、発想を転換して、Windows10側とNetBSD側の処理を分離することにしました。Windows10側では、指定日付以降に作成されたり変更されたりしたファイルのリストを作成しておきます。そしてNetBSD側では、そのファイルを参照してファイルを転送するだけの処理にしました。

ここで問題になるのは「指定日付以降に作成されたり変更されたりしたファイルのリスト」をどのようにして作成すれば良いかということです。U*IXであればfindを使えばなんとかなるのですが、Windows10ではどうすれば良いのでしょうか。もしかするとPowerShellでロジックを組めば対応できるのかもしれませんが、PowerShellを使ったことがないので他の方法を探してみました。Webを検索したところforfiles.exeというものがあるようです。なんと指定した日付以降のファイルリストを生成することができました。何時の間にこんなコマンドがWindowsに入っていたのか知りませんでしたが、ありがたいことです。

またNetBSD側ではファイル転送をおこなうだけなので、cpを使えば良いかと思いましたが、ちょっと問題がありそうです。最初にWindows10側のファイルを全てコピーする場合には問題になりませんが、2回目以降に一部のファイルだけをコピーしようとすると転送先ファイルのディレクトリが無い可能性を想定しなければなりません。スクリプトをちょっと工夫してmkdirしてからcpするようにしても良いのですが、cpioを使ってみました。cpioの存在は昔から知っていましたが、普段はtarを利用するのでcpioを利用したことがありませんでした。アーカイブファイルを作るだけではなく、ファイル転送にも利用できるようですし、転送先にディレクトリが必要なら作ってくれるオプションもあります。

最後の方式でWindows10側(%HOMEPATH%\Documents)→NetBSD側($HOME/Documents)にファイル同期させることが出来るようになりました。

2017-10-26

Hooked on Classics 2000 Golden Classics

Hooked on Classics」というCDを持っています。元々はLPを持っていましたが、LPレコードが廃れた頃にCDで買い直しました。クラシック以外にもスウィングとかバロックとか、いろいろなアルバムが出ていますが、見つけたら買うようにしていました。何分にも随分古い作品なので、新しいアルバムは出ていないようです。

このアルバムを知ったきっかけは、NHKが土曜日の夜に放送していた「海外ウィークリー」の中で紹介されたことだったような覚えがあります。キャスターだった幸田シャーミンが「今、イギリスで大ヒットしているアルバムがある」と言って、最初のトラックを流したと記憶しています。Wikipediaでは次のように書かれているので、1982年頃のことでしょうか。
 The opening track, "Hooked on Classics" (Parts 1 & 2), was released as a single in October 1981, peaking at number 2 in the UK and later in the US at number 10 on the Billboard Hot 100 in February 1982.
時は過ぎて、LPの時代からCDの時代に変わり、今ではYouTubeなどが一般的になりました。ふとYouTubeでHooked on Classicsを検索してみたら「HOOKED ON CLASSICS 2000 (Golden Classics)」というのを見つけました。曲のアレンジが新しくなっています。

何時の間にリリースされたのか分かりませんが、タイトルに2000とあるので、2000年頃でしょうか。日本国内では既に流通していないようです。なんとか入手したいものですが、どうしたら良いのでしょうか。

2017-10-25

ラテン語辞書の常識?

放送大学で「ラテン語の世界('16)」を受講したので古書店で『研究社 羅和辞典』(1980年7月10日増訂新版14刷)を買いました。この辞書しか知らないので、僕の持っている辞書が偶々そうなのか、ラテン語辞書はどれもそうなのか断言はできませんが、辞書の使い方の説明がとてもシンプル(実は不親切と言いたい)です。

まだラテン語の勉強を始めたばかりなので辞書で単語を引くほどの段階でもないのですが、 せっかく買ったので使ってみようと思いました。試しに教科書に掲載されている単語cogitoを調べてみました。

辞書には次のように掲載されていました。
cogito, are, avi, atum, v.a. [co+agito] (intrans.) 1. 考える、考慮する、省察する、追想する、回顧する(de alqo; de re). (以下略)

cogitoの後にある「are, avi, atum」というの何でしょう?「v.a.」や「intrans.」については辞書の始めの方に「本辞典使用の略語」として説明されていた何なのか分かりました。

今まで利用してきた辞書(英和辞典など)の場合、辞書の最初の方で使い方の説明がありました。ところが『研究社 羅和辞典』にはそういう説明が見当たりません。ラテン語の辞書では常識なので態々書く必要がないということなのでしょうか。

「ラテン語の世界('16)」の印刷教材には「辞書では伝統的に一人称単数で掲載する習慣があります」(44頁) とさらっと書いてあるのですが、この他には特に辞書の引き方の説明は見当たりません。

困ってしまって検索エンジンで調べていると「山下太郎のラテン語入門」の「ラテン語の格変化」に次のような記述を見つけました。
辞書では見出しの次に属格の形を記す習わしです。ただし語尾のみ記す場合がほとんどですから、その点にも注意が必要です。

また『ゼロからのラテン語』には「3.1.13 辞書に書かれている動詞の項目」で次のように書かれていました。
ラテン語の辞書に書かれている動詞の項目は、次のような記述から構成されています(ただし、 辞書ごとに相違がありますので、すべての辞書がこのとおりになっているわけではありません)。(以下略)

やはりラテン語辞書独特の習慣があるようです。こういうことは一度知れば良いことなのですが、全くの初心者にとっては落とし穴になるところです。

ともかく一歩前進しました。