ToDo:
やはり、Encodeオプションのような形で、String処理時のEncodeを指定できる方がスマートな気がする…
その場合、サポートするEncode名とバックエンドの関係を定義するframeworkを実装すべきか?
現在の状況では、実用的なコードポイント集合はUnicode(UCS-4)になるので、CSI実装をする必要は無いと思われる
基本的なPrimitiveは、multibyte bufferからコードポイントを拾う・multibyte bufferへコードポイントを書き出す辺りか?
ISO-2022系のような状態遷移を持つ系はどうするのが良いのだろう… (一旦、UCS-4列にパックしてからiconvだと一時領域を割り当てる必要がある)
使用頻度がそれなりにありSADScript上での実行コストが高そうなString Primitive
現行のUnicode運用ではUCS2を考慮する必要は薄いが、UTF16は必要になる可能性が有り得るので、関数名は ToUTF8(UCS4 → UTF8)・FromUTF8(UTF8 → UCS4)辺り
内部実装用に未初期化なStringオブジェクトを割り当てるhelper functionを用意した方が良さそう…
手持ちのMeteor Lake-P (vendor=0x8086 device=0x7d55 subvendor=0x10f7 subdevice=0x8338 on Let'snote FV5)での動作状況まとめ
テスト環境は、stable/14に pull requestに上がっていた linuxkpiパッチを個別に取り込んだ環境
今のところ、Ver 6.8に drm/i915: Disable DSB usage specifically for LUTs当てて、xdmで使う(VT consoleを使わない)が実用上の落としどころか?
Optics/Orbit Server運用にて利用頻度が高いPackage実装修正の残作業
Canvas, Plotまわりは量が多い上に解析めんどそうなので後回し (Optics ServerでMatching系の操作をしなければ影響なし)
Emacs 30.1に更新したら、japanese/lookupが壊れたぽぃ
M-x lookupで単語検索すると
Looking up `foo'... (検索対象の辞書名...) lookup-dictionary-search-cache-get: Wrong type argument: obarrayp, [nil nil nil nil nil nil nil nil nil nil ...]
で結果が戻ってこない
UIにバインドされている関数lookup-find-patternを追いかけて、入力パターンを受けて実行される部分をscratch buffer上で評価して詳細なエラーログを取得してみた
(lookup-search-pattern (lookup-current-module) "test") C-j Debugger entered--Lisp error: (wrong-type-argument obarrayp [nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil ...]) intern("test" [nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil ...]) lookup-dictionary-search-cache-get(#s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/readers" :options (:alias "readers") :id "ndeb:/usr/local/share/dict/cdrom/readers") :name "readers" :options nil :id "ndeb:/usr/local/share/dict/cdrom/readers/readers") #s(lookup-query :method regexp :string "test" :pattern "test")) lookup-dictionary-search-internal(#s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/readers" :options (:alias "readers") :id "ndeb:/usr/local/share/dict/cdrom/readers") :name "readers" :options nil :id "ndeb:/usr/local/share/dict/cdrom/readers/readers") #s(lookup-query :method regexp :string "test" :pattern "test")) #f(compiled-function (query) #<bytecode -0x4b416b1ee2a9b0>)(#s(lookup-query :method regexp :string "test" :pattern "test")) mapcar(#f(compiled-function (query) #<bytecode -0x4b416b1ee2a9b0>) (#s(lookup-query :method regexp :string "test" :pattern "test"))) lookup-dictionary-search-multiple(#s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/readers" :options (:alias "readers") :id "ndeb:/usr/local/share/dict/cdrom/readers") :name "readers" :options nil :id "ndeb:/usr/local/share/dict/cdrom/readers/readers") (#s(lookup-query :method regexp :string "test" :pattern "test"))) lookup-dictionary-search(#s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/readers" :options (:alias "readers") :id "ndeb:/usr/local/share/dict/cdrom/readers") :name "readers" :options nil :id "ndeb:/usr/local/share/dict/cdrom/readers/readers") #s(lookup-query :method default :string "test" :pattern "test")) lookup-search-query(#s(lookup-module :name "scrup" :dictionaries (#s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/readers" :options ... :id "ndeb:/usr/local/share/dict/cdrom/readers") :name "readers" :options nil :id "ndeb:/usr/local/share/dict/cdrom/readers/readers") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/NaturalScienceEtoJ" :options ... :id "ndeb:/usr/local/share/dict/cdrom/NaturalScienceEtoJ") :name "body" :options nil :id "ndeb:/usr/local/share/dict/cdrom/NaturalScienceEtoJ/body") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/NaturalScienceJtoE" :options ... :id "ndeb:/usr/local/share/dict/cdrom/NaturalScienceJtoE") :name "body" :options nil :id "ndeb:/usr/local/share/dict/cdrom/NaturalScienceJtoE/body") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/SuperDic2006" :options ... :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006") :name "kojien" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/kojien") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/SuperDic2006" :options ... :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006") :name "readers" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/readers") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/SuperDic2006" :options ... :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006") :name "wachu5" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/wachu5") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/SuperDic2006" :options ... :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006") :name "kanjigen" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/kanjigen") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/SuperDic2006" :options ... :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006") :name "gn06ep01" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/gn06ep01") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/SuperDic2006" :options ... :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006") :name "jyukugo" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/jyukugo") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/SuperDic2006" :options ... :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006") :name "katakana" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/katakana") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/SuperDic2006" :options ... :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006") :name "screen" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/screen")) :bookmarks nil :priority-alist ((#s(lookup-dictionary :agent ... :name "body" :options nil :id "ndeb:/usr/local/share/dict/cdrom/NaturalScienceEtoJ/body") . t) (#s(lookup-dictionary :agent ... :name "readers" :options nil :id "ndeb:/usr/local/share/dict/cdrom/readers/readers") . t) (#s(lookup-dictionary :agent ... :name "screen" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/screen") . t) (#s(lookup-dictionary :agent ... :name "katakana" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/katakana") . t) (#s(lookup-dictionary :agent ... :name "jyukugo" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/jyukugo") . t) (#s(lookup-dictionary :agent ... :name "gn06ep01" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/gn06ep01") . t) (#s(lookup-dictionary :agent ... :name "kanjigen" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/kanjigen") . t) (#s(lookup-dictionary :agent ... :name "wachu5" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/wachu5") . t) (#s(lookup-dictionary :agent ... :name "readers" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/readers") . t) (#s(lookup-dictionary :agent ... :name "kojien" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/kojien") . t) (#s(lookup-dictionary :agent ... :name "body" :options nil :id "ndeb:/usr/local/share/dict/cdrom/NaturalScienceJtoE/body") . t))) #s(lookup-query :method default :string "test" :pattern "test")) lookup-search-pattern(#s(lookup-module :name "scrup" :dictionaries (#s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/readers" :options ... :id "ndeb:/usr/local/share/dict/cdrom/readers") :name "readers" :options nil :id "ndeb:/usr/local/share/dict/cdrom/readers/readers") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/NaturalScienceEtoJ" :options ... :id "ndeb:/usr/local/share/dict/cdrom/NaturalScienceEtoJ") :name "body" :options nil :id "ndeb:/usr/local/share/dict/cdrom/NaturalScienceEtoJ/body") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/NaturalScienceJtoE" :options ... :id "ndeb:/usr/local/share/dict/cdrom/NaturalScienceJtoE") :name "body" :options nil :id "ndeb:/usr/local/share/dict/cdrom/NaturalScienceJtoE/body") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/SuperDic2006" :options ... :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006") :name "kojien" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/kojien") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/SuperDic2006" :options ... :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006") :name "readers" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/readers") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/SuperDic2006" :options ... :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006") :name "wachu5" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/wachu5") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/SuperDic2006" :options ... :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006") :name "kanjigen" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/kanjigen") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/SuperDic2006" :options ... :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006") :name "gn06ep01" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/gn06ep01") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/SuperDic2006" :options ... :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006") :name "jyukugo" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/jyukugo") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/SuperDic2006" :options ... :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006") :name "katakana" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/katakana") #s(lookup-dictionary :agent #s(lookup-agent :class ndeb :location "/usr/local/share/dict/cdrom/SuperDic2006" :options ... :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006") :name "screen" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/screen")) :bookmarks nil :priority-alist ((#s(lookup-dictionary :agent ... :name "body" :options nil :id "ndeb:/usr/local/share/dict/cdrom/NaturalScienceEtoJ/body") . t) (#s(lookup-dictionary :agent ... :name "readers" :options nil :id "ndeb:/usr/local/share/dict/cdrom/readers/readers") . t) (#s(lookup-dictionary :agent ... :name "screen" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/screen") . t) (#s(lookup-dictionary :agent ... :name "katakana" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/katakana") . t) (#s(lookup-dictionary :agent ... :name "jyukugo" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/jyukugo") . t) (#s(lookup-dictionary :agent ... :name "gn06ep01" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/gn06ep01") . t) (#s(lookup-dictionary :agent ... :name "kanjigen" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/kanjigen") . t) (#s(lookup-dictionary :agent ... :name "wachu5" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/wachu5") . t) (#s(lookup-dictionary :agent ... :name "readers" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/readers") . t) (#s(lookup-dictionary :agent ... :name "kojien" :options nil :id "ndeb:/usr/local/share/dict/cdrom/SuperDic2006/kojien") . t) (#s(lookup-dictionary :agent ... :name "body" :options nil :id "ndeb:/usr/local/share/dict/cdrom/NaturalScienceJtoE/body") . t))) "test") (progn (lookup-search-pattern (lookup-current-module) "test")) eval((progn (lookup-search-pattern (lookup-current-module) "test")) t) elisp--eval-last-sexp(t) #f(compiled-function () #<bytecode 0x1842a8d95a4a>)() handler-bind-1(#f(compiled-function () #<bytecode 0x1842a8d95a4a>) (error) eval-expression--debug) eval-last-sexp(t) eval-print-last-sexp(nil) funcall-interactively(eval-print-last-sexp nil) call-interactively(eval-print-last-sexp nil nil) command-execute(eval-print-last-sexp)
当然だが、Emacs 29.4上では発生しない…なんだこれ?
なんか、(lookup-current-module)の評価値が、Emacs 29.4環境とEmacs 30.1環境で違うような… .emacs回りの再現性は要確認か?
Panasonic 充電ミニドライバー EZ1D11Sを購入
充電端子がUSB-Cなのだが、USB A-Cケーブルでの充電はできるが、USB C-Cケーブル経由でUSB PD充電器(Anker Wall Charger 65W)に繋ぐと充電できない
USB BC充電専用か?まあ、ドライバーの充電でUSB PDの制御系をフル実装するのはコスト高なのでわからんでもない。
マニュアルにも、USB Type-Cの記述はあってもUSB PDの記述はないのだから、 USB PD充電にならないところまでは納得のゆく話だが…
しかし、USB Type-C接続のUSB PD充電器ってPDのネゴシエーションに失敗するとBC充電すら有効にならないのは規格意図通りなのかなぁ?(たしかに安全側に倒してあるのだが…パッシブなUSB BC充電目的でType-Cコネクタを実装するのもアリと言えばアリのはず)
openblasのコンパイルエラーの件だが、openblas-0.3.29にてcpuid_x86.cに識別コードが追加され解消した模様
先日のAPCのUPSバッテリーの劣化警告が出た件だが、先ごろ10分近い停電もあったので容量増強のため、玉突き更新を選択
新規にOMRON BW120Tを調達し、サーバー系で使っているBW100Tをリプレース実施
余ったOMRON BW100TでAPC BR550G-JPをリプレース実施
APCとリプレースしたOMRON BW100Tは、QNAP NAS側でも問題なく認識された
鉛蓄電池入りのAPC UPSは、OMRONの引き取りサービスに回収してもらうつもりだが、運搬用に佐川急便の発送伝票を手に入れる必要があるが、最寄り営業所がバス停から遠いぞ… Orz
あと、忘れないんうちに新規購入のBW120Tのユーザー登録を行うこと!
カテゴリー: Admin | Emacs | EPICS | Fortran | FreeBSD | GCC | hgsubversion | IPv6 | KEKB | LHC | Lisp | LLVM | MADX | Ryzen | SAD | samba | tDiary | unix | WWW | YaSAI | お仕事 | イベント | 出張 | 宴会 | 数学 | 艦これ | 買いもの | 追記 | 雑記