2017-02-17

NHK「空想大河ドラマ 小田信夫」

NHKで「空想大河ドラマ小田信夫」というドラマを放送しているそうです。2017年2月4日(土)から全4回です。Webで話題になっているのを見て知ったので、初回は見逃しました。面白いです。NHKを代表する番組である「大河ドラマ」(今年は、おんな城主 直虎ですが)をパロディーにしています。その発想は以前にやはりNHKで放送されていた「サラリーマンNEO」の初期の頃の作品を思わせます。

放送が深夜時間帯ですし、全4回で長くはないので、視聴者の反応を探る目的が強そうな作品ですが、その割には本物の大河ドラマと見劣りしないほど、しっかり作られています。本物の大河ドラマで何度も繰り返し取り上げられてきた戦国時代を扱っているので、舞台セットや衣装なども準備するのは(現代劇に比べて)大変だと思いますが、結構ちゃんとしています。オープニング、ナレーション、エンディングも、本物そっくりです。そこがまた笑いを誘います。

近年の大河ドラマは番組の最後に(大河ドラマに由来の土地を訪ねる)「○△紀行」というミニ番組を流しているので、空想大河ドラマでもやって欲しいところです。

2017-02-15

簡体字と旧仮名遣い

The Japan Times STの2017年2月10日号にTan Ying Zhenさんのエッセイ「Happy learning!」が掲載されていました。著者はシンガポール出身とのことなのですが、中国本土出身の中国系なのかもしれません。そう思ったのはイラストに簡体字が使われていたからです。例えば「笑口常开」(これは「Keep smiling!」という意味だそうです)のような簡体字を用いた中国語が描かれていました。中国系であったとしても台湾出身ならば繁体字をつかうのではないかと思いました。

簡体字はウィキペディアでは「1950年代に中華人民共和国で制定された」と説明しています。日本でも戦前まで使われていた漢字の字体を簡略化しましたが、簡体字はもっと大胆です。一方で台湾では今日でも昔と同じ字体(これが繁体字)を使っているので、日本と台湾と中国本土で三者三様です。

シンガポールの中国出身者の滞在時期にもよると思いますが、簡体字が使われる前からシンガポールに在住していた中国系シンガポール人であれば簡体字の教育は受けていないでしょう。おそらく繁体字を用いた教育を受けているはずです。しかし中国本土で簡体字が使われるようになると、 その影響を受けざるをえないと思います。次第に簡体字を使うようになっていくのではないでしょうか。それでも幼少期に受けた教育が繁体字をベースにしているはずなので、その影響で、たまには文章の中に繁体字が姿を見せることがあるのではないかと思います。

これは日本語の教育が戦前の旧仮名遣いから戦後の現代仮名遣いに切り替わったことに似ていると思います。旧仮名遣いの頃の教育を受けた世代は、戦後になって時代の趨勢が現代仮名遣いになると、自らの書く文章も現代仮名遣いに切り替えることになりますが、何かの拍子に文章中に旧仮名遣いが姿を見せてしまうことがあります。「~でせうか」とか無意識に書いてしまうことが、極稀にあるようです。

幼少期に学んだことは、普段抑えられていても、何かの拍子に顔を出すことがあるようです。

環境変数SHELLの役割とは?

NetBSDの場合、新しくアカウント作るとホームディレクトリの下にはテンプレートからコピーされたファイルが置かれます。そのうち.loginには次のような記述が含まれています。
if ( ! $?SHELL ) then
  setenv SHELL /bin/csh
endif

環境変数 SHELLが未定義だった場合/bin/cshという内容で定義している訳ですが、これは何故このようなことをしているのでしょうか?

疑問点は2つあります。
  1. この記述は~/.loginにありますから、cshに固有な初期設定ファイルです。このファイルが処理されている時に「環境変数SHELLが未定義である」のは一体どのような状況を想定しているのでしょうか?
  2. 環境変数SHELLが未定義の場合どういう問題が起きるのでしょうか? 何か困ることがあるのでしょうか。例えば環境変数PATHが未定義だとすれば、コマンドが見つけられなくなってしまうわけです。しかし環境変数SHELLが未定であったとしても、問題がおきる状況というのが想像できません。
シェルはユーザが自由に選択できるのでcshではなくshを使っても構わないはずです。もしshを利用する場合~/.profileを使うことになりますが、そこでは環境変数SHELLに関する処理は入っていません。つまり、こういうところから、環境変数SHELLが未定義だった場合の処理は不要なのではないかという疑問が出てくるのです。

NetBSDのホームディレクトリに置くログイン環境設定ファイルについて

dynabook SS SX/15Aで動作させようとしているNetBSD/i386の環境設定について考えてみます。これまでは、そもそもNetBSD/i386の動作に問題がないか、使おうと考えているアプリケーションに支障がないか等を主に注意してみてきました。動くかどうかが問題だったので、詳細な動作環境の微調整は後回しにしてきました。しかし動作自体には問題がないことが確認されつつあるので、今後はお留守になっていた動作環境の設定に気を配っていこうと思います。

まず最初に設定しておきたいのは、端末を開いたときにシェルの初期設定をおこなうためのファイル群です。要するにshなら.profileであったり、cshなら.cshrcとか.loginのことです。

NetBSDをインストールしたノートPCは多人数で共有するわけではありませんが、そうかと言って何でもrootアカウントだけで利用するつもりはありません。普段は非特権ユーザを作っておいて、そちらを使うつもりです。

そうなるとユーザによってシェルが異なってくるため、どのユーザであっても同じように環境変数などが設定されるようにしておくためには、気を配らなければならないことがあると考えています。

さらにcshでは.cshrc.loginの違いを意識しておかなければなりませんし、ユーザを越えてシステム全体に影響する/etc/csh.cshrcや/etc/csh.loginというファイルも使うことになるかもしれません。しかもcshではなくてtcshを利用しようとも考えているので、さらに考慮しておく事柄が多くなります。

また外部PCからTeratermでログインした場合は.loginが読み込まれますが、 xdmからログインすると.lgoinの出番はなくて.xsessionに必要な環境変数を定義しておかなければならなくなります。

ここまで考えてきたような多様な状況やファイルを考えるのは、面倒と言えば面倒です。結局は自分ひとりで使うマシンなので、 あちこちのファイルを操作しなくても構わないんじゃないかとも考えるのですが、ここはじっくり考えてみたいと思います。いろいろとファイルが分かれているのには(多分)それなりに理由があるはずなので、とりあえずは全体像を理解しておこうと思います。

2017-02-14

映画「この世界の片隅に」

映画「この世界の片隅に」を観ました。以前から気になっていたのですが、なかなか機会がありませんでした。公開後の評判も良く、予想以上に長期に亘って上映されています。しかしこのままいつまでも上映され続けるわけではないでしょうし、あまりにも遠くの映画館でしかみられなくなるのも困るので、腰を上げることにしました。

よくある戦争映画とは違い、直接的な描写や台詞で物語をすすめるのではなく、間接的に心情を伝えていくので、その描写の奥にあるものを受け止められるかどうかは自分自身にかかっています。画面の一部であったり、台詞の断片を、何気なしに見過ごしてしまったり、聞き逃してしまっても、もし何も気付かないとしたら、作品が訴えようとしていることが分かっていないのかもしれません。

とても良い作品だったと思います。主役の声もイメージとピッタリで、作品をより引き立てていると思います。

2017-02-13

pkg_rolling-replace

pkgsrcからインストールしたパッケージを更新するために自作スクリプトを利用しようと思いましたが、どうも調子が良くありません。気になった問題点は次のようなところです。
  • 処理中にエラーが出た場合、運が悪いと依存するパッケージの一部が削除済みになっていて、復活させる手段がない。
  • 依存するパッケージを何度もビルドしているような気がして、効率が悪そうな気がする。

これらの問題を頑張って解決するように自作スクリプトを改良するよりも、既に利用されているツールを使う方が安心感があると思うようになりました。pkgsrcの中にpkgtools/pkg_rolling-replaceというものがあるので使ってみました。

使ってみたところ、今後のpkgsrcの更新はpkg_rolling-replaceを使っていこうという気になりました。ただし若干問題点があるので注意は必要です。

依存関係を辿って多くのパッケージをビルドし直すために、とても時間がかかります。もしビルド中にエラーが出てしまうとシステムの不整合がおきる可能性が残ります。これは最終的にpkg_rolling-replaceが正常終了してくれれば整合性が保たれることになりますが、途中でエラーが出たら放置しておいてはいけません。このことは「how to upgrade packages」でも指摘されています。
Because pkg_rolling-replace just invokes make replace, the problems of ABI changes with make replace apply to pkg_rolling-replace, and the system will be in a state which might be inconsistent while pkg_rolling-replace is executing. But, by the time pkg_rolling-replace has successfully finished, the system will be consistent because every package that has a depending package 'make replaced' out from under it will be marked unsafe_depends, and then replaced itself. This replace "rolls" up the dependency tree because pkg_rolling-replace sorts the packages by dependency and replaces the earliest needing-rebuild package first.

今回の実行中には次のようなエラーが出てしまいました。出力されているメッセージだけを見るとディレクトリを変えられなかったというだけで、何が問題なのか見えません。どうやら数か月前にdevel/gmockが廃止され、devel/googletestに統合されたようです。既にdevel/gmockがインストールされていたので、pkg_rolling-replaceは更新対象としようとしてエラーが出てしまったようです。pkg_deleteでgmockを削除しようとしたら、依存関係があるため単独では消せませんでした。-fオプションを指定して強制的に削除して、あとはpkg_rolling-replaceの処理にまかせました。
RR> Checking if gmock has new depends...
cd: can't cd to /usr/pkgsrc/devel/gmock
make: don't know how to make show-depends. Stop

またpkgsrcの各パッケージが必要とするdistfilesをダウンロードするため/usr/pkgsrc/mk/defaults/mk.confから日本固有の設定を/etc/mk.confに転記しておいたのですが、こうするとパッケージによってはdistfilesをダウンロードできなくてビルドが止まってしまいました。この設定を調整して問題がないようにすべきところでしょうが、今後の課題とします。

2017-02-11

「Think global, act local」に思う

「Think global, act local」という標語があります。この言葉は、ずいぶん前に放送大学教養学部に在学していた時に環境問題に関する面接授業(放送大学では一般に「スクーリング」と呼ばれている形態の授業を「面接授業」と呼んでいます)を受講した時に学びました。その意図するところは「地球規模で思考し、地域的に活動する」ということです。英語版Wikipediaには「Think globally, act locally」というエントリがありますが、冒頭で以下のように記しているので要するに同じことです。
The phrase "Think globally, act locally" or "Think global, act local" has been used in various contexts, including planning, environment, education, mathematics, and business.

グローバルな活動がおこなわれる現代社会には国境はないと発言する人もいます。インターネットを使えば世界中の情報を瞬時にアクセスできるので、まさにグローバルな社会を実感します。金融の世界などでも、どこかの市場の影響があっという間に世界に拡がるので、グローバルに取引されていることが窺えます。

個人的な経験ですが、古本の洋書を購入するため「AbeBooks.com」というサイトを利用しています。望む書籍のタイトルなどを指定すると全世界の古書店(対象となるのはAbeBooksと提携している書店だけですが)を対象に検索してくれます。これだけでも十分にグローバルであることを実感しますが、さらに驚いたのは、ある米国の古書店に注文を出したらヨーロッパの倉庫から発送されてきたという事例がありました。

このような活動が日々の生活で当たり前となっていれば、時代の趨勢はグローバル化であり、無国境化であり、全てがフラットな社会こそ未来の姿だと思うことでしょう。

さて、数年前に「超高速!参勤交代」という娯楽映画を観ました。続編もあり、時代劇のスタイルをとっており、時代考証もされていますが、これで歴史を学ぶものではなく、純粋に楽しめばよい作品です。江戸時代の小藩が巻き込まれた事件(もちろん創作です)をコミカルに描写していますが、見所のひとつは藩士たちの郷土愛の強さです。ある意味で現代のグローバル化の対極に位置しているかと思わせるような様相です。藩士たちにとって世界とは自分の属する藩領であり、一生をそこで終えるのが幸福な終末だったことでしょう。

江戸時代以降の歴史を知っている人間からすれば、鎖国をやめ世界に門戸を開き、そして今日のグローバル社会がある訳です。当時の藩士たちは自分の属する藩の中しか知らず(あと多少江戸も) 、広い世界を知らずに一生を終えるわけですから、お気の毒な事だと思うかもしれませんが、はたしてそうでしょうか。

現代に生きる我々は、江戸時代のように土地に縛られておらず、何処でも好きなところに好きな時に移ることができます。可能性としては、日本国内に留まらず、世界中のどこにでも移ることができるはずです。それは諸手を挙げて喜ぶべきことなのでしょうか。そうであれば何故に映画「レオン」の最終シーンのような描写がなされるのでしょう。

世界の人口は70億人を超えており、今後100億人になろうともしています。人口が爆発的に増えていますが、第2次世界大戦の頃の世界の人口は20数億人でしたし、 19世紀初頭の世界の人口は10億人程度でした。現在の中国の人口よりも全世界の人口が少なかったというのは驚きです。

グローバル社会に生きる私たちは、昔の人達と比べて、これほど多くの人間に関心を寄せるほど心が広くなっていると言えるでしょうか。世界を股にかけて活動しているとしても、視野に入っているのは極めて限定された範囲なのではないでしょうか。冒頭の標語を捩れば「Think local, act global」に逆転していませんか。

つい先ごろ、世界の富豪62人の資産が、全世界の人口の半分の富と同じだという報道がありました。「グローバル社会」を謳歌する富豪たちがいる一方で、「グローバル社会」という名のもとに経済的に追い詰められる膨大な数の人達が生まれてしまっています。このままでいくと、世界のことなんかどうでもよい、自分さえよければいいという風潮が加速してしまいます。意識が内向きになればなるほど、他人がどうなろうと気にならないのかもしれませんが、これは六道のなかのどれになるのでしょうか。あわせてニーメラーの言葉も思い起こしたいと思います。