2025-03-11

PlantUMLはネットワーク図も描けるのか。

何処で知ったのかは忘れてしまいましたが、PlantUMLというものを知りました。テキストで記述されたものから様々な図を生成できるようです。いわゆる「お絵描きツール」を使ってグラフィカルに作図するのではありません。例えていえば、Microsoft Wordを使うのではなく、LaTeXを利用するようなイメージです。

 

いろいろなことができるようなのですが、腰を据えて利用してみるまでには至っていません。使い方の情報を得るため、PlantUMLのQ&Aフォーラムを見るようにしています。すると「Forcing net positions in nwdiag」という質問がありました。その質問の内容はさておき、綺麗なネットワーク図が描けることに驚きました。

 

PlantUMLでは、こんなこともできるのか。使いこなせば、便利なツールになりそうです。普段使いできるように、練習してみようかと思います。

RLoginでOpenVMS VAX V7.2に繋ぐと「VT500_Series」になる理由

simh V3.8-1のvax.exeを用いてOpenVMS VAX V7.2の環境を構築し、DZデバイスを経由してRLogin V2.30.2.1を用いて接続すると「VT500_Series」として認識されます。なぜこうなるのか調べてみました。

 

RLoginの公式サイト「エスケープシーケンス一覧」の「CSI一覧」によると、「DA1」のところに以下の記述があります。この記述における「TermID」というのは、設定「制御コード」の中にある「ESC/CSI/DCS」を開き、「各種ID」の中にあります。


TermID     DECTIDのTermID設定によりレスポンスが異なる

 

デフォルトでは「10」になっています。これが「VT500_Series」に相当するようです。「9」にすれば「VT400_Series」に、「7」か「8」ならば「VT300_Series」になります。「1」なら「VT100」として認識されます。

 

OpenVMS VAX V7.2を操作するためであれば、VT200以降であれば何でも構わないだろうと思います。Tera Termは「VT300_Series」として認識されているので、それと揃えようかと思います。

2025-03-10

simhのDZデバイスでOpenVMS VAX V7.2に接続

simh V3.8-1のvax.exeを使用してOpenVMS VAX V7.2の環境を構築しています。今のところは、OS本体を入れてだけです。今後は様々な環境構築をしていくつもりですが、そのためにも、作業しやすくするために端末環境を整えておこうと思います。

 

vax.exeから起動したままでは、OSからはLA36として認識されています。これはDEC Writer IIとして知られているもので、VT100のような端末よりも旧い、キーボードとプリンターが一体化したようなものです。当然ながらスクリーンエディタは使用できませんので、ファイルを編集するにはラインエディタを使うことになります。さすがに操作性が悪いので、なんとかしたいところです。

 simh V3.8-1のvax.exeには、DZデバイスが用意されています。これはDZV11 Terminal Multiplexerというもので、本物のVAXであれば複数の端末をぶら下げることができるはずです。simhでは「ATTACH DZ <port>」とすることで、TELNET接続を受け付けることができます。<port>は何でもよいようですが、「23」にしておけば、通常のTELNETポートになります。

 

この状態で、Tera Term V5.4.0から繋いでみました。繋ぐだけなら問題ないのですが、オプションを適切に設定する必要があります。昨今はUTF-8が主流なので、デフォルトではエンコーディングが「UTF-8」になっています。しかしこのままでは、ログイン後にエディタを起動すると、エスケープシーケンスが正しく解釈されないようです。どうやらエスケープシーケンスをUTF-8として解釈しようとして失敗しているようでした。そこでエンコーディングを「EUC」にします。これでうまくいったようです。「sh term/full」の結果は、以下のようになりました。

Terminal: _TTA0:      Device_Type: VT300_Series  Owner: SYSTEM

   Input:    9600     LFfill:  0      Width:  80      Parity: None
   Output:   9600     CRfill:  0      Page:   24

Terminal Characteristics:
   Interactive        Echo               Type_ahead         No Escape
   No Hostsync        TTsync             Lowercase          Tab
   Wrap               Scope              No Remote          Eightbit
   Broadcast          No Readsync        No Form            Fulldup
   No Modem           No Local_echo      Autobaud           No Hangup
   No Brdcstmbx       No DMA             No Altypeahd       Set_speed
   No Commsync        Line Editing       Overstrike editing No Fallback
   No Dialup          No Secure server   No Disconnect      No Pasthru
   No Syspassword     SIXEL Graphics     Soft Characters    Printer port
   Numeric Keypad     ANSI_CRT           No Regis           No Block_mode
   Advanced_video     Edit_mode          DEC_CRT            DEC_CRT2
   DEC_CRT3           No DEC_CRT4        No DEC_CRT5        No Ansi_Color
   VMS Style Input

 

ついでにRLogin V2.30.2.1でも試してみます。こちらでもオプションを適切に変呼する必要がありました。Tera Termの経験をもとにエンコーディングを「EUC」にしてみましたが、それだけでは駄目でした。さらにエスケープシーケンス「8454」を「Reset(C1制御文字を処理する)」に変更します。当初は「Set(C1制御文字を無視する)」になっていたので、うまくいかなかったようです。「sh term/full」 の結果は、以下のようになりました。

 Terminal: _TTA1:      Device_Type: VT500_Series  Owner: _TTA1:
                                              Username: SYSTEM

   Input:    9600     LFfill:  0      Width:  80      Parity: None
   Output:   9600     CRfill:  0      Page:   24      

Terminal Characteristics:
   Interactive        Echo               Type_ahead         No Escape
   No Hostsync        TTsync             Lowercase          Tab
   Wrap               Scope              No Remote          Eightbit
   Broadcast          No Readsync        No Form            Fulldup
   No Modem           No Local_echo      Autobaud           No Hangup
   No Brdcstmbx       No DMA             No Altypeahd       Set_speed
   No Commsync        Line Editing       Overstrike editing No Fallback
   No Dialup          No Secure server   No Disconnect      No Pasthru
   No Syspassword     SIXEL Graphics     Soft Characters    Printer port
   Numeric Keypad     ANSI_CRT           Regis              No Block_mode
   Advanced_video     Edit_mode          DEC_CRT            DEC_CRT2
   DEC_CRT3           DEC_CRT4           DEC_CRT5           Ansi_Color
   VMS Style Input

 

双方を詳しく調べたわけではありませんが、Device_Typeが、Tera TermではVT300_Seriesなのに対して、RLoginではVT500_Seriesになっています。

 

ひとまずTera TermやRLoginから接続できるようになりました。これならDEC Writer IIよりも快適になるでしょう。しかし次の難問は、キーボード自体にあります。DEC LK201は、PCのキーボードとは違いがあります。しかも、エディタを使う上で、それが影響するのです。この問題をTera TermやRLoginで如何に解決するかが、課題になります。

2025-03-09

『仏教は、いかにして多様化したか』(世界史のリテラシー)は参考になる

NHK出版から数ヶ月おきに出版されている「世界史のリテラシー」シリーズの最新刊である『仏教は、いかにして多様化したか』を買って読んでみました。日本は(いちおう)仏教徒が多いことになっています。しかし現実としては、葬式を仏式でおこなうことが多いとか、お墓参りに行くことがあるという程度の話しです。例えばキリスト教徒がキリスト教の教えに親しんでいるのに比べると、日本人が仏教の教えというものを、どのくらい理解しているのか怪しいところです。

 

かく言う私自身も、仏教については、よくわかっていません。僅かに知っていることといえば、仏教はインドで成立したとか、中国から日本に渡来したとか、我が家の宗派が何であるとか程度です。さらに言えば、日本の仏教は、平安仏教(天台宗や真言宗)とか、鎌倉仏教(浄土宗、日蓮宗、禅宗など)は、仏教発祥のインドには無いようですし、日本に仏教が渡来した元である中国にだってあるようには見えません。そうならば日本の仏教とは何なのでしょうか。そもそもアジア各国に拡がっている仏教というのは、同じものなのでしょうか。そのような疑問をこれまで感じてきました。

 

本書は、仏教の成立から日本の仏教が多様化した現状までを、網羅的に記しています。それらを一つ一つ詳しく語ると、約150ページの本書では語りきれないでしょう。そういう意味で、概要を提示しているにすぎませんが、私の疑問は、ひとまず解消しました。

 

本書の「はじめに」では、次のように書かれています。

全四章を眺めてみると、古代インドでの仏教誕生から、二十一世紀の日本仏教までの「仏教通史」になっていることがおわかりでしょう。もちろん、限られた紙数で本当の仏教通史など書けるはずはなく、それはあくまで主要なトピックの数珠つなぎにすぎないのですが、それでも釈迦から現代日本に至る仏教の大きな流れを略図として理解していただくのには役立つものと考えています。

 

何事もそうですが、まず全体像を把握したうえで、個別に気になる点があれば詳細に入っていく方法があります。その一方で、個々の細部を語ることで、(運が良ければ)全体像が理解される筈というアプローチもあります。仏教については、これまで、細部を云々する情報が多く、それで結局全体像はどうなっているの?という点が疎かになっているきらいがありました。本書を読んだことで、細部が全体像の中に位置づけられたので、スッキリしました。

2025-03-08

Googleマップのスマホアプリにおけるタイムラインが壊れた

数年前から、Googleマップのスマホアプリでタイムラインを有効にしています。正直なところ、精度が酷く実用に耐えるのか疑わしいところですが、何もないよりはマシという感覚で使っています。

 

ところが、一昨日から突然「この日の訪問データはありません」とメッセージが出てくるようになりました。しかも数年分の全ての日において「この日の訪問データはありません」とメッセージが出てしまうのです。実際にデータが記録されていなかったわけではなく、(精度は悪くても)普通にタイムラインが記録されていたはずなのです。

 

たまたま調子が良くなかっただけかとも考えて、スマホを再起動させてみたりしましたが、現象は改善しませんでした。アプリに何かバグが入り込んでしまったのかもしれないので、そのうちに修正されるかもしれません。それが何時のことになるか分からないし、バグなのかすら不明なので、何か別の手を打ちたいところです。 


タイムラインは有効となっているのですが、ためしにいったん無効として、あらためて有効にしてみました。そうすると、過去のタイムラインが復活したようです。しかし一部に記録がおかしいところがありましたが、全ても確認したわけではありません。

 

ひとまず復旧したようなので、これで様子をみようと思います。そもそも、いったい何がどうなって、こうなってしまったのか、全くわかりません。今回のような問題が二度と起きてほしくありませんが、Googleマップのタイムラインは、精度が非常に悪いので、それを修正して欲しい気持ちもあります。

OpenVMS VAX V7.2インストール時にDECnet Phase IVを入れるか否か

simh V3.8-1のMicrosoft Windows用vax.exeを使用してOpenVMS VAXの環境を作ろうとしています。OS本体のインストールはできているのですが、simh側設定やOpenVMS側のインストールオプションなどをどのようにするか考えているところです。最終的な目標は、OpenVMS VAXの動作環境を作ってみることであって、そこで何か実用的な用途を期待しているわけではありません。

 

OpenVMS VAX V7.2をインストールする最中にオプション要素をインストールするか否かを選択しなければなりません。例えばDECwindowの要否を選択するのですが、GUI環境は無くて良いだろうと判断しています。その他には、DECnet-PlusやDECnet Phase IVの要否も選択しなければなりません。DECnetはPlusもPhase IVも不要という判断も考えられます。

 

そもそもDECnetを有効としたところで、通信相手が存在しないのです。20年ほど前であれば、LinuxにもDECnetのためのコードが入っていたそうですが、もう10年以上前に除去されてしまったそうです。DECnetの通信相手がいないなら、DECnetオプションは入れなくても良いとも考えられます。

 

そういうわけで、DECnet-PlusもDECnet Phase IVも不要としてOSをインストールしてみました。ところがOSを使ってみると予期しないエラーが出るのです。網羅的に確認したわけではないのですが、「license list」というコマンドを打つと次のようなエラーが出ます。

 %SMG-F-UNDTERNOS, undefined terminal - couldn't access system terminal table

 

試しにDECnet Phaase IVを有効にしてOSをインストールしてみて、同じコマンドを打ってみたら、エラーもなく正常に処理されました。これだけでは、OSインストール時にDECnetを有効とするか否かが原因だとは即断できませんが、DECnet-PlusもDECnet Phase IVも入れずにOpenVMS VAX V7.2をインストール完了させると、何やら不具合が出そうな予感がします。

 

DECnetは通信相手がいないので、正直なところインストールしたくありませんが、入れないと良くないことが置きそうなので、DECnet Phase IVを保険として入れておこうかと思います。

2025-03-05

LibreOffice CalcのCSV読込みに文字コード自動判別機能が追加された

ずいぶん以前よりMicrosoft Officeを使うのを止めて、LibreOfficeを利用しています。そのCalcにおいて、CSVファイルを読込む際に、CSVファイルの文字コードを指定しなければなりませんでした。UTF8なのかShiftJISなのか、その他なのかを適切に指定しないと、文字化けしてしまいます。

 

ところがLibreOffice 25.2.1.2では、文字コードの自動判別機能が追加されたようです。これまでは、UTF8だったりShiftJISだったりするのを、個別に手動で指定していましたが、「auto detect」ならば自動的に判別してくれます。とても便利です。

 

余談ですが、LibreOfficeは「無料のMicrosoft Office」ではないと思います。確かにLibreOfficeは無料で使えるし、MicrosoftOfficeで作成したファイルを読込めますが、それを完璧に再現できることを保証しているわけではありません。読込んだ情報は保たれますが、凝った書式は崩れてしまいます。雑誌などでは、「MicrosoftOfficeを止めて、LibreOfficeを使おう」のような記事を見かけます。これが間違っているわけではないと思いますが、MicrosoftOfficeとLibreOfficeが全く同じだと認識しているなら、それは違うでしょう。