NetBSD環境は…-current使うか…?
OpenBSD(uaa@), Ham(JG1UAA), Ingress(Lv14, RES), Japanese(Sagamihara-city, Kanagawa)
Another side: https://social.tchncs.de/@uaa
npub1rarr265r9f9j6ewp960hcm7cvz9zskc7l2ykwul57e7xa60r8css7uf890
Messages from this Mastodon account can read via mostr.pub with npub1j3un8843rpuk4rvwnd7plaknf2lce58yl6qmpkqrwt3tr5k60vfqxmlq0w
xbiffを改造してdocker appにするのが一番手っ取り早いよと言われてしまうと、そうかもーと書くしかない状況なのかも。
xbiffの使い方が正しくないと言われてしまうとそうなんだけど、fetchmail/procmailでメールを取得した際のログファイルをxbiffにチェックさせているので、POPサーバを覗きに行くタイプのbiffでは役に立たないんですよね。
~/GNUstep/DEfaults/WMStateいじるしかないのかな。気が進まないけど…
ん-、.steprcに"wharf なんとか"と書けば良いんだろうけどそれAfterStepでの話ですよねって理解してる。WindowMakerではどうしろと…?
https://ayapin-film.sakura.ne.jp/LJ/Docs/07th.pdf を見るに、wharfボタンにアプリを押し込むっていう手法を使えば良いんですね…!(探す!!)
このアカウントは、notestockで公開設定になっていません。
ウィンドウシェードさえあれば別にtwmでも困らないっちゃ困らないんですよね。マウスのメニューから起動するのはmltermとfirefoxだけなので。
wmdockerが使えないとfcitxのステータス表示が無いのですごく使いにくいんですよね。このdockerにbiffも組み込めると良いのですが、今のところそういうのは探し出せていないので仕方なくxbiffを別に起動しているという。
OpenBoxの乗り換え先としてJWM使っていたんですが、ウィンドウシェード周りの挙動が変わってしまったのでWindowMakerへ移っています。
とはいえ、Dockアプリが今となってはかなりお寒い状況なのが悲しいんですよね。docker(wmdocker)とwmclockくらいしか使っていなくて、他のはビルドしても大概エラーが出てしまうという。
あー、sj3みたいなttyクライアントがlibkkcにも欲しいなー
libkkc使ってる状態では(でもEmacsはanthy)、fcitxで不満は無くてむしろibusはムキーってなることが多かった。
uim-libkkcがあるなら欲しいんだよなあ。fcitxとOpenBoxとの相性が悪いのでWindowMaker使ってるだけなので、fcitxを捨てられるならWindowMakerを使い続ける理由も無い。
とはいえ、別にOpenBoxでもWindowMakerでも不満は無い…
とりあえず、当時物の環境としてVine 2.5は必要かもしれない。Vine 3.xが古い/dev/ptyXX対応なら、それでも良いのかも?
(でもその解決法だとSVR4/NEWS対応を切るので悪手だ)
あるいは、openpty()化しちゃったsj3を原典にバックポートして、pty(4)問題だけは勘弁してもらう。
とはいえ、原典側がgcc-2.95から離れれば離れるほどwarningの嵐とかビルドができなくなるとかいった問題を抱えだすからどうすれば良いんだろう。というかNetBSDのsj3ってどうやって問題を解決してるんだ…?(patch見なよって話になる??)
gcc-2.95だと全く動かなくて、gcc-3.3.6だと動いてはいるけどconfig.hを組み込むとビルドが通らなくなるという状況でした。gcc-4.x以降を前提にしている気がしますけど、そもそもgccに限った問題なのか?(gcc-3.3.6ではconfigure自体は通っているので、出力結果が悪さをしているのだし)という疑問があります。
あと、kinput2に相当するsjxaなるものがあるらしいという話を見つけまして…多分そこまで掘り出すと収拾つかなくなると思います。詳しくは https://web.archive.org/web/20050305193356/http://www.peanuts.gr.jp/sjxa/ (2002.9.30)辺りですかねえ
https://ftp.netbsd.org/pub/pkgsrc/current/pkgsrc/inputmethod/sj3-client/index.html があるってことは、NetBSDでやるのが現実的だったりします?
web日記(仕込み中)から切り出し:
----ココカラ
実はFUJIMI-IM/sj3と原典(sj3-2.0.1.20)を同時に動かせるLinux環境を構築したいと思ってあれこれ試しているのですが、
・pts(4)は古い/dev/ptyXXであること(Vine 2.5は対応、3.xは未確認、4.x以降の/dev/ptsは未対応)
・EUC-JPロケールに対応すること(Vine 4.xまではデフォルトがEUC-JPロケール、5.x以降はUTF-8なので別途設定が必要)
・Imake等の古いユーティリティに対応すること(Vine 5.xはここで引っかかります)
・FUJIMI-IM版はgcc-4以降であること(Vine 2.5(gcc-2.95), 4.x(gcc-3.3)はここで引っかかります、Vine 5.2(gcc-4.1.2)ではビルドできましたがこれより前のgccについては不明)
を全て満たす環境というのは厳しそう
----ココマデ
…と考えています。
XGもGSも鳴る(鳴るだけ)、という理由でKORG NS5Rを買った人<自分
※XGドータボード乗っけたNX5Rが後に出てくるんだもんなあ
Vine 2.5だと/usr/X11R6/lib/X11/configにImake.tmplは確かにある。
Vine 5.2では/usr/share/X11/configにImake.tmplが…あるんだけどなあ。
Vine 5.2だと原典(sj3-2.0.1.20)のビルドができない。xmkmfの後、make Makefilesで何故かImake.tmplが見つからないとごねる。
Vine 5.2(gcc-4.1.2)だとFUJIMI-IM版のsj3のビルドはできる。ふむ。
FreeBSD/NetBSD ports版の方が良いのかなあ
Vine 4.2の時点で/dev/pts/0になってるから、もはや原典のsj3(tty client)は動かない。一つの仮想環境内で原典/FUJIMI-IM版の動作比較をする場合、テストスイートに頼るしかないのかも。
(よく分からないので自分の理解できる範囲でとりあえず悪あがきってやつです。これって場合によってはプロジェクトの足を引っ張ることになるのも一応理解してると思う多分きっとおそらく…)
とりあえずいじったものをテストする方法が定まってないので、sj3だのsj3-demoだのを動かさたら良いなーって足掻いてたりします。テストスイートを作るならそちらに委ねた方が安心ではあります。
SJ3、とりあえず「エンコーディング変換」「辞書ファイル操作」「ローマ字・かな変換」「かな・漢字変換」の4つをライブラリ化してインターフェースを定めてユニットテストを書きたい気持ちもある。ソケット通信周りと端末APIが完全動作の壁になっているのだけれども、それ以外の手を付けやすそうなところも現状は野放しなので……。
VirtualBoxにVine4.2インストール→あっけなく終わるけどパスワードとか入れてない(入れずに終わる)→再起動後Xの起動に失敗→設定するならrootのパスワード入れてね★
えっと、あの…
一旦消したVine4.2環境、/dev/pty周りがどうなってるか見たいのでちょっと入れ直し。折角なのでVirtualBoxを使ってみる。
(VMwareのようなGUIインストールじゃなく、なんかHDDの区画を切らずに勝手にインストールが進んでるのが納得いかん…どうせ/devの下を見たらさっくり消すのでいいけどさあ)
(issueをどう書いたもんか、テスト環境の構築はどうしたもんか、それを考えるという現実から逃避中です…)
canuumに関してはNetBSD-4くらいまではpackagesがあるようだけど、最近のNetBSDへの追従はしてないのかな。 http://www.jp.netbsd.org/ja/JP/Documentation/Packages/list/inputmethod/canna-canuum/README.html
雑に検索した範囲だとsj3が/dev/pty周りでLinux上では動かないと言っている話を見つけ出せなかったし、せいぜいこの辺の問題だと http://www15.big.or.jp/~yamamori/sun/misc/ uumで/dev/ptsを使う という話くらいしか自分は見ていない。
別にそんなの動かなくても困ってないよ、という理解をするしか無いんだけど(確かにkinput2でX11から使えれば困らないじゃん、ではあるんだけど)。
もしかしてX11端末(もしくはUTF-8化)により、tty端末での日本語入力プログラム、uumとかcanuumとかsj3とかの類の需要は無くなったってことか?
これだ http://www.tk2.nmt.ne.jp/~artrec/ar-sj3.shtml#Sj3_with_kinput2
「ちなみにフリー版Sj3は文脈解析はできませんが, NEWS版Sj3は文脈解析らしきことをやってたようです. その辺のコードを削られたものがフリー版として公開されてるのかもしれない. 文脈解析なんて大げさなことが, かな漢字変換システムに, ほんとに必要かということについては疑問があります. 文節の区切り方を学習する機能が賢ければ, 文脈解析までできなくても実用的にはそんなに困らないというのが実感です. 」
Apple Lisaのソースコードが一般公開 (2023.1.25) https://pc.watch.impress.co.jp/docs/news/1473136.html
余裕のあるメーカーだからこそ歴史を公開するのだろうか。
Microsoftも(非常に古いバージョンに限られるけど)MS-DOSのソースを公開していたような。
そもそも https://computerhistory.org/ に相当するような、力を持った機関があるのかという話もありそう(IPSJコンピュータ博物館やマイコン博物館が今後その部分を担っていくことに期待してます)。
このアカウントは、notestockで公開設定になっていません。
1992年WIDE報告書 17章 オペレーティングシステムhttps://www.wide.ad.jp/About/report/pdf1992/part17.pdf
第2章 WIDEにおけるBSD Unixのサポート、にSONY NEWS-3400へ4.4BSDを移植する話が出ている(また90年度WIDEプロジェクト報告書にはNWS-3800へ4.3BSD-Renoを移植したとの記述あり)。
この中で、「機種異存の部分や、デバイスド
ライバなどには、Sony から提供されたコードを利用している。(原文ママ)」とあるんだけど…これって相手次第ではNEWS-OSのソースを全部とは言わず一部は公開していたということになるんですかねえ?(BSD由来のOSなら別に秘匿するようなもんでもないってことなのかな)
webブラウザからFTPアクセスができなくなるのって、FTP上の過去のリソースへのアクセスが阻害されるとか、下手すりゃそれが存在しない物として扱われるということになるんだよな(知ってる人ならコンソール開いてキーを叩くだけなんだけど、その一手間が結構めんどい)。
素人に手出ししないでほしいビートルズ「Hey Jude, don't make it worse.」
そのくせ「お仕事があるだけ感謝しな?」という目線で語る訳だ。
まあ、中堅(今の氷河期)世代がいないという愚痴なんかもそうですよね…散々採用控えておいたくせに今更そんなことをよくその口で言えますよねって。
このアカウントは、notestockで公開設定になっていません。
このアカウントは、notestockで公開設定になっていません。
ん-じゃ、Vine 4.2環境は捨てる。なんか新しいの用意しようっと。
な ん で す と
LinuxでシフトJISが使えた (2022/5/7) https://zenn.dev/tmtms/articles/202205-locale
Ubuntu 22.04でEUC-JP/Shift-JISロケールが使えるっていうなら、イマドキのDebianとかでもapt-get install locales language-pack-ja; vi /etc/locale.gen; locale-genとかで対応できるってことっすかね?
Vine 5.x系か、あるいは6.x系のどっちかでEUC-JPロケールを設定するしかないのかな
とはいえ、compats.c自体もエラーを吐きまくるのでVine4.2上ではビルド不可と諦めた方がいいのかもしれないな…
むっ、Vine 4.2上でFUJIMI-IM/sj3のビルドを行うとlevel1.cがエラーを起こすの、#include "config.h"を潰したらエラーにならなくなった。この中の何が原因なんだろうか…
あーMisskeyから直で投げてないので(出てきたメッセージをコピペしてTheDeskに食わせたので)Markdownを解釈してくれてないんだと思う多分
今日のあなたのレスポンスコードは
**100: Continue** です。
[MDN Docs](https://developer.mozilla.org/ja/docs/Web/HTTP/Status/100)
#httpレスポンスコードおみくじ
https://koliosky.com/play/9h05d0cqcp
他に探れそうな可能性としては、Vine 4.x系(gcc-3.3.6)→Vine 3.x系(gcc-3.3.2)への移行かなあ。おそらくoconfigureは通るだろうけど、他の状況がどう変わるかは何とも。Vine 2.6は2.5のマイナーチェンジなのでgcc-2.95系、oconfigureが通らない可能性は極めて高い(Vine 2.5で通らないことを確認しているから)。
Vine 4.2を動かす(仮想)マシンの問題か?ということでVMware Player→VirtualBoxのV2Vも試しているけど状況変わりません。
試しに、IPv4の閉じた環境で簡単なファイル転送を行うツール https://github.com/jg1uaa/txf-unix をVine 4.2でビルドしたけどこれは問題なかった。教科書にあるような、socket()やconnect()の使い方をしているので問題は無いはずなんだけど…これと同じ書き方をしているのにlevel1.cがエラーを出すというのがどうにも解せない。
紛争は終了。
どうやらこちらの使い方に問題があったようだ(というかなるほどこの界隈はこういう物の使い方をするのか…)。
紛争を始める前に問い合わせたほうが良かったようだと反省している。すまん。
でも昔と違って最近のAliExpressってPlatinum/Goldといったメンバー制を廃止しちゃってるとか、簡単にfull refund取れない(返品しない場合は半額が上限?)とか、だいぶあっちに有利なルールに変わってるような気がする。
紛争を開始してきた。
どうもAliExpressで買い物をすると、時々全然違う品物が届くので困る…(しかも予備とか代替品の無い品物を頼んだ時に限って多発する)
struct sockaddrなるものがどこに定義されているのか、その中身にオレオレ構造体があるならどこに定義されているのか、辺りを追うか…?
今日はお店が定休日なのでお休みです、多分(ヘルプの要請で急遽出勤という可能性が拭えないが、予定入れちゃってるんだよなあ)
TV見てないから分からないけど、辛(つら)いにプラスして幸せとかそういうことを言いたいCMなんだろうけど…なんか辛(から)いにプラスしてもっと刺激的なカラいものをと解釈してしまいそう。
…なんてことを言おうものなら不謹慎厨の餌食になりそうだな。
このアカウントは、notestockで公開設定になっていません。
310:
if (connect(fd, (struct sockaddr *)&sunix, len) ==
ERROR) {
sj3_error_number = SJ3_ConnectSocket;
return ERROR;
}
363:
ret = connect(fd, (struct sockaddr *)&sin, sizeof(sin));
特段おかしなコードには見えないんだけど…Vine2.5とかイマドキの環境では問題なく通ってるのに。
[uaa@localhost sj3]$ gmake level1.o
cc -g -Wall -Wno-unused-parameter -fPIC -I. -c -o level1.o level1.c
level1.c:30 から include されたファイル中:
config.h:120:3: 警告: #warning No suitable endian.h could be found.
config.h:121:3: 警告: #warning Please e-mail the maintainers with your OS.
level1.c: 関数 `open_unix' 内:
level1.c:310: error: incompatible type for argument 2 of `connect'
level1.c: 関数 `open_inet' 内:
level1.c:363: error: incompatible type for argument 2 of `connect'
…は?
マスコミが「犯人探しと公開処刑」を優先するのって、民衆がそれを望んでいるからなのでは…?
民衆とマスコミ、鶏と卵の関係なのでどっちもどっち、という気はするけど…早期に事態を解決するのであれば拡大装置たるマスコミを潰すことを優先するのが良さそう。
Nostrでweb日記付けちゃうというのはアリかもしれない。電子署名がつくので内容が壊れているかどうかのチェックができるという利点があるから(チェックしかできないけど)。とはいえ、今の体制から署名付きのJSONに書き換えるのもなんか面倒そうな気が…下手にCMS導入するよりかはマシ程度かなあ。
アクセス数やアクセスログを調べてた時期もあるけど…そもそも場末のweb日記に必要か?って話もあって。一時期掲示板っぽいものは付けていたけど、掲示板cgiの老朽化もあってやめてしまったので、今はSNSで壁打ちしてるのとあんまし変わらない。
まあメールアドレスくらいは書いてあるし、(実名でやっている以上)調べれば何らかのアクセス手段は分かる筈だから本当にコミュニケーションを取る必要があるって人は何らかの方法で接触してくるでしょうというスタンスでやってます、20年くらいは…?(ってもうそんなに経ってる?)
今までは個人の日記サイト(と敢えて書く)を上げるのにapacheみたいなフツーのhttpdを上げて、RSS対応とかやっていたもんだけど…(blogの時代とかをすっ飛ばして)今はActivityPubに流せるような「何か」をおひとり様で上げるという時代なのかなあと雑に理解してる。
手打ちHTMLでweb日記書いてる身にとっては、素に近いものの方が扱いやすいので多分このままで(CMSを使うだのSNS系なアプリで日記っぽくするだのといったものを使わずに)進んでいくんじゃないかなーという気がする。ぃゃ実際CMSの導入とか考えた時期はあったんですけどね?
ああいう人達も脱X(ex. Twitter)の流れにあるっていうことなんだろうか
このアカウントは、notestockで公開設定になっていません。
このアカウントは、notestockで公開設定になっていません。
このアカウントは、notestockで公開設定になっていません。
Vine Linux 5からUTF-8がデフォルトになったってある。 https://vinelinux.org/aboutvine5.html
ってことはその前の版、Vine Linux 4.2辺りの仮想マシンも持っておく必要があるかな?
gcc-2.95みたいな化石だと流石にoconfigureが通らないけど、それより新しければ通るよね…? https://github.com/kristapsdz/oconfigure
まああの時は円高だったおかげで復興もしやすかったという面はある(化石燃料代が異様に高くならずに済んだ)だろうけど、今度は流石にそういう訳にはいかないからなあ…
そういえば元日の震災後にロシア機・中国機が領空侵犯しに来たという話はあるんだろうか。確か3.11後は飛んできたって記憶があるんだけど。
3.11後はむしろ円高に振れたっていうのがあるけど、本来なら国力が下がれば好機とばかりに円は安くなるはずなんだよなあ。あの時(3.11)の方が異常だったのかも?
円の不安定化、今後は円安に警戒 (2011/4/22) https://imidas.jp/jijikaitai/a-40-089-11-04-g331
地震で円も下がっているし、気軽に海外通販とはいかなくなったか…大発会どうなるなんだろう。流石にこの好スタートってニュースは震災前の予測だから、当たらない気がするけど。
日本株は、2024年も好スタートか (2023/12/26) https://media.monex.co.jp/articles/-/23500
The OpenBSD way
We made a drastic decision!
The OpenBSD base system supports exactly two LC_CTYPE locales:
1. UTF-8
2. C = POSIX = US-ASCII
We don't even support ISO-LATIN-1 any longer in the base system.
https://www.openbsd.org/papers/eurobsdcon2016-utf8.pdf
…なるほど、mbstowcs()がlocaleの設定抜きでも動いちゃう(Linuxはlocaleの設定をしないと動かない)というのはこれが理由なのか。wchar_t使うようなものはUTF-8関連に決まっとる、と。
TODOs for Full UTF-8 Support https://wiki.freebsd.org/Unicode/TODO
ここのUseful Links (Ingo Schwarze's presentation on OpenBSD's use of UTF-8)でWhy and how you ought to
Keep multibyte character support simple (2016 Sep 25)が紹介されてる https://www.openbsd.org/papers/eurobsdcon2016-utf8.pdf
「日本語とコンピュータ」というテーマを別に好んで追っている訳じゃないんだけど、80年代のワープロ専用機に使われていたコードとかフォントとかあの辺の技術が秘匿されたままというのは、おそらく(主語デカくしますw)日本人にとって大きな損失って自分は思うんですよね。
そりゃまあソースがオープンになってるCannaなりWnnなりがあるからsj3のソースがアレでもいいじゃない?という話も出そうですけど…中途半端なモンを世に出しといて、散々な評価を今後もされ続けるのって当時開発した人達にかなり失礼なんじゃないの?って思うし。
あと、初期のRupoに使われていた東芝フォント。これも自由に使えるようそろそろ何とかしてもらわないといけない気がする。今となっては古臭いのは確かだろうけど、ワープロを分解して吸い出すような阿呆な行為をする(自分のような)人間をこれ以上増やす訳にもいかないでしょうから。
このアカウントは、notestockで公開設定になっていません。
ExceedじゃないけどASTEC-XだとWindows←→UNIX間の日本語文字列のコピペができるってあるから、UTF-8の使える今はともかくWindows9xな時代だと(ってその時代にあったっけ?)EUC-SJIS変換とか必要だったのか。うぅ、想像するだけで胃が痛くなる…
https://www.astec-x.com/
このアカウントは、notestockで公開設定になっていません。
そしてフリー版sj3のコードは、NEWS版のコードから何らかの機能を削減して配布されているという話(真偽は不明)もあるので、本当の原典たるNEWS版のコードがSONY内にまだ眠っているのであれば、それを公開してほしいよなというのが正直な感情。
日本のUNIXの歴史として活躍したコードがどんなものであったか見てみたいという興味もあるし、それだけの歴史を支えてきたコードが風化して死んでいくのは流石に納得がいかないので。
omasanoriさんが以前指摘してたけど、sj3(この場合はフリー版sj3のtar ballに含まれるもの全体を指してる)のコードって、意図的にコメントが抜かれた形で配布されてるので本当に何やってるか分からないコードなんですよ。
改行が意味無く複数行あるように見えるとか、コードの;の後に意味無くあるように見える空白とか、多分そこにはコメントが/* 実は何らかのメッセージ */として存在していた形跡なんじゃないか…と自分も思うのです。
確かSONYのNEWSって、同時代のAXパソコン(DOS/Vの前身といっちゃって良いよね?)であるQuarterLとの連携が~って話があったような。ありましたっけ?
まあX上ではEUCで、tty向けのsj3フロントエンドはSJIS、というすみ分けだった可能性はあるのかも(当時のNEWS-OSに関する資料があればこの辺ははっきりするんだけど…ってその資料集めとかも考えないといけない?NetBSD/news勢の力を借りたいところだけどってどんどん話デカくなってませんかコレ?!)
sj3のコードの中に、localeがja_JP.SJISかチェックしてるコードがあってこれで動作切り替えてるんですよ…(震え声)
https://github.com/FUJIMI-IM/sj3/blob/main/sjrc.c#L91
このアカウントは、notestockで公開設定になっていません。
ってことは、あの時代におけるEUC的なスタンダードが今のUTF-8になる訳か…
このアカウントは、notestockで公開設定になっていません。
ちょっとこれ以上は開発方針をどうしていくか考えた上で手を出さないと厳しいかも。issueに投げといた方が良いかな?
あれか、こういう場面こそiconvで変換するようにする(mbstowcsは使わない)という方向で行かないとダメなのかも。
そもそも、OpenBSDはja_JP.eucに対応してましたっけ?なんとなくEUCが通っていた、という気はしますけど…localeでEUCに対応していたという記憶はないような(記憶が怪しいので自信ないです)。
sj3、起動時にファンクションキーのメッセージが「SJ3」しかないのって、多分eucmessage.cの問題。mbstowcsでなんか変換掛けてるけど、変換元がja_JP.EUCであることを知らなければそれ以外に変換するのは困難という気が。
なので当然表示がおかしくなるよな、このコードは…
NEWSの場合は現在設定中のロケールを保存→ja_JP.EUCであることを主張→mbstowcsでEUCから何らかのものに変更→ロケールを復帰、というコードになってるのでこれに合わせれば良いんだと思う。
ということは、Linuxだとja_JP.EUCじゃないと原典は動作しないことを意味するね?
sj3(書き直した方)をVine上のsj3servと繋げてみてもなんかちゃんと動いていない感じなので、demo/にあったサンプルコードをちょいと直して試してるところ。
https://github.com/jg1uaa/sj3-demo
こっちだと動いているっぽいので、sj3自体の問題と考えるのがよさそう。
このアカウントは、notestockで公開設定になっていません。
(あっちで書いても良いんだけど)
物を買うことは未来への投票行動という話は割とよく聞きますが、
1)その品物に魅力があるか
2)その品物が購入可能な金額であるか
というフィルターを通るか撥ねられるかという基準に「国産品」が撥ねられているだけという気がします。
お賃金が青天井というなら多少は出してでも国産をというのは分からなくはないのですが、そんな余裕は無いです。食費削ってでも買いたいと思わせる商品であれば無理はするでしょうけど、そう感じさせるような日本製の品がここ10~20年でどれほどあったかと…
@redbrick EUC-JPで持ってるメッセージを必要に応じEUC/Shift-JISで吐く作りになっているので、これをUTF-8でも吐かせるようにするとか何らかの手段が必要そうではありますね。
とりあえずまずは埃だらけのコードを掃除してからどうするかという気がします(量が多いので掃除もなかなか進まないのです)。
このアカウントは、notestockで公開設定になっていません。
昨日いじった部分をPRの変更部分見ながら確認してみたけど、signal周りの大ポカ(さっき直した)を除けば問題ないと思う。backportでも動作を確認できてるし…
それで思い出したんだけど、sj3自体はja_JP.EUCでメッセージを吐くとして、その上で動くbashがja_JP.UTF-8でメッセージを吐くので割と困ったことになるんですよねえ…
onwinchの先頭でsignal(SIGWINCH, SIG_IGN)してることに気づいてないぞ自分💢
とりあえず、Vine2.5上の挙動を信じられるかという話はあるだろうけど…目の前でこういう現実があった以上、SA_RESETHANDあり/signalハンドラ内での再設定あり、でやるしかなさそう…
LinuCのSysV風サンプルではSA_RESETHANDを使ってない(のでhandler()内でもsignalの再設定はしていない)。
http://linuxc.info/signal/signal3.html
だからまあSA_RESETHANDは無いってことで良いはずなんだが… 流石にSA_RESETHAND周りのsigaction()に問題があるとかそういう話は無いと信じたい。
Vine2.5上でonwchichのハンドラ再設定を止めると、ちゃんと動かない(ウィンドウサイズの変更に追従しない)。sigactionでSA_RESETHANDは宣言してないんだけど、どゆこと?
done, makecore, exitprocess, fail→exit()なりabort()なりを呼ぶ
sigpipe→動作中はSIG_IGN、終了後は元の物に復帰
sigtstp→一旦SIG_DFLを設定し、pid=0宛にSIGTSTP送信後保存しといたold_sigtstpのハンドラを復帰
onwinch→ハンドラ抜ける際に再度onwinchのハンドラを設定
posix signal化してるのでonwinchのハンドラ再設定は要らないよね??
SIG01-C. シグナルハンドラの継続性に関して処理系定義の詳細を理解する (2020-06-16) https://www.jpcert.or.jp/sc-rules/c-sig01-c.html
このアカウントは、notestockで公開設定になっていません。
sj3.c、suspend()のioctl(master, TIOCOUTQ, &nc) < 0の時の処理がちょっと分からないんだけど、SVR4ではループを抜けて後始末、それ以外ではfail()に飛ばして後始末をせずにkill(SIGTERM)というのは…どっちが良いんだろう。とりあえず非SVR4な扱いにしちゃってるけど。
なんかこの子プロセスにまつわる扱い、ヤな問題を抱えてそうな気がするんだけど…SVR4/BSD/Linuxで何か挙動が違うんだろうか。歴史的なことを知ってるUNIXプログラマの助言が欲しい。
sj3,.c: SIGCHLDに対するsignal()/sigaction()の設定タイミングがSVR4だとfork()後、それ以外ではfork()前になってるんだけどこれどういうことなんだろう。とりあえず非SVR4ということでfork()前にしちゃったけど。
ああああああ、sigpipeの扱い方がめちゃくちゃになってる。これは直さないと(何故ああ書いたんだ自分)
ぬおおおお、sj3(原典)のMakefileって*.bakを消すようになってる…なんてことを…
で、あればかなり大掛かりな修正にしちゃってるけど大筋は問題ないっていう判断でいいかな?できればBSD系のふっるいOSでも試してみたいところなんだけど(とはいえopenpty使ってるとなると古いOSと言えどそこそこ新しいものになるはず)。
PRで投げたsj3(tty frontend)の修正、sj3.hも含めて原典にbackportしてみたけど一応動いてる感じです。ていうか動くんだこれ…
もしかして、sj3.hが(こっちで勝手に追加した)Func.hに相当する物だったりする?(ということはsj3.hへ統合しちゃうのが適切かな)
2023年は「DOS/V」の終焉 (2023/12/30) https://pc.watch.impress.co.jp/docs/topic/feature/1558548.html
一つの時代が終わったのか…
Windows 3.1日本語版の仮想環境を比較 (2022年版) (2022-01-29) https://diarywind.com/blog/e/win31j-on-vm-2022.html
表題はWindows3.1となっているけど、DOS/Vへの言及もあり。
https://iosoft.blog/2020/07/16/raspberry-pi-smi/ ふむふむ…「全てのRaspberry PiにSecondary Memory Interface (SMI)が含まれているが、公開されているドキュメントが無いので滅多に使われてはいない。筆者の見つけた唯一の情報は https://github.com/Ysurac/raspberry_kernel_mptcp/blob/master/include/linux/broadcom/bcm2835_smi.h と https://github.com/fenlogic/IDE_trial 」(雑な訳)
Broadcomのいつもの秘密主義か…というのが最初に思った感想。とはいえ他のSoCメーカーも情報出してくれないことがあるしBroadcomばかり悪く言うのは良くないか。
このアカウントは、notestockで公開設定になっていません。
自分はそこまで大人になれないのです…うぅ、永遠のガキなのかも。
このアカウントは、notestockで公開設定になっていません。
まあ新年から悪質な冗談とも本気ともとれない物を流してもしゃーないのですけど。
TRON projectと123便の陰謀論に関して語る人達も、自分の中の滅ぼしたいリストに漏れなく入っちゃってますねー。多分消せないです。
IT関係の国産厨って害悪以外の何物でもないので跡形もなく滅ぼす…これ以外の回答を持つことができないという段階に自分は来てしまっていて。あんまし良くないってことは分かってるつもりなんだけどねえ。
自分たちで作ることについては否定しないし、それは応援するんだけど、作りもせず「国産!国産!!」と口だけ出してプロジェクトを潰していく奴等に対する憎悪が相応の物になってしまいましてね。ちょっと抑えるのも限界かなーって。あははー。
国産SNSねえ…そういう「国産!国産!!」とか言ってるのを見るとなんとなーく💢💢💢な感情がですね…
非常用の緊急起動鍵なんてものが仮にあったとしたら、悪用されるのがオチという気がしなくもないです。
特に津波に関する情報は無し…横浜局なのでこっち側じゃない、といわれちゃうとそうなのかも。
クルマ業界がそういう状況に対して何か対策してるって話も聞いたことが無いんだけど、自分が聞いたことが無いだけ(実はなんか秘策を持ってる)ということに期待したいなあ。
GPSでサーキットに入ったことを感知すると自動的にリミッターが解除されるとかそういう仕掛けを持った車があると聞くから…非常時は自動的に鍵が無くても車が動かせるとか、治安維持機構に対しては特殊な鍵が発行されているといった、何らかの策を持っているような気がするんだけど。
なんとなーくなんだけど、都市部とかの大地震においてキーレスエントリーの車を鍵を残さずに乗り捨てていった結果、道路の混雑などで救助や復旧作業が滞る未来しか見えないんですよねー
navtex(424kHz)、いつもどおり17:34に放送開始
地震の時って鍵を車に挿したままにして逃げろってよく言われてるけど、最近のキーレスエントリーな車だとその辺大丈夫なんだろうか?うっかり鍵と一緒に避難する人が多くて道路が詰まるという現象が起こってもおかしくなさそうな気がするんだけど。
あるいは、知らない人間に車を触られるのは嫌なのでそのまま置き捨てる可能性(邪魔になったとしても知ったことかという悪意)がどの程度あるか。
さて、(本当はANSI化した作業の一部も上げときたい気はするけど)これだけでもGitHub上げておけばこちらの身に何かがあっても誰かが何とかしてくれる…はず。完全な正解でなかったとしても、部分的な正解はあると思いたいし。
sj3、BSDだと古いTTY向けのコード使ってるというのはtermiosのtc.c_cc[FOO]ではなくtc.t_fooみたいなコードのことを多分指してるのかなーという気がしてます。とりあえず、
- Linux/*BSDで動けば良い程度に整理した
- termiosの関数を積極的に使う
- signalはsigactionに置き換えた
- デフォルトのシェルは/bin/sh(cshじゃない)
- ptyのオープンはopenpty()にお任せ
- 他色々と細かい部分?
はやってみたけど、これで正しく直せたかは不明。そもそもUNIXのシステムプログラミングをきちんと(歴史を含めて)理解している訳じゃないので…
これをpull-requestにしちゃうのはちょっと気が引けるのですが、一応こんな感じの方向性でどうなんですかねーという話も兼ねて投げてみます。もうSVR4/NEWS対応は要らんでしょうし、なるたけPOSIXとか機種依存にならないコードにしたいなって。
(その割にはopenpty()を平然と使う)
このアカウントは、notestockで公開設定になっていません。
ん-むぅ、~/.sjrkを用意すれば/etc/sj3/sjrk見つからないという苦情は聞かずに済むけど、とはいえ動いてる感じは無いねえ。
NAVTEX(424kHz)はどうかなあ…いまのところ静か。
このアカウントは、notestockで公開設定になっていません。
修正版のsj3で、とりあえずVine2.5上のsj3servに繋がってるっぽいんだけど…インストールしてないのできちんと動いてない感じ(インストールすれば動くのか??)
「今すぐ逃げること!」の後に10秒以上の空白とか、まじ怖いんですけど594kHz
ちょいとTVを点けてニュース観たいって時に限って、子供がTVでアニメ見てるってのはどうなんだよ…
NHK第一(594kHz)の緊迫感が凄い「すぐ逃げてください!」
あーそうかー、Vine2.5だとgcc-2.95.3なのでイマドキのコンパイラ向けに書き直したsj3.cを食わせても対応できないんだ。どうしよ。
nmttyslot()が無くて、utmp操作用の関数が無いってことは…utmpへの操作はできない、ってことになりやせんか?
ANSI化を一旦置いといて、sjgetchar.c, sj3.cの大掃除(もうSVR4も__sony_newsも要らんでしょ)が必要な気がする。
あけましておめでとうございます。本年もよろしくお願いいたします。