25/06/10 16:44:55.65 .net
変数スコープのデフォルトがダイナミックからレキシカルに変わった
752:名無しさん@お腹いっぱい。
25/06/10 21:37:59.11 .net
>>751
27.1からそうなんだけど、31.0から警告を出すようになったんやろ
custom.elとかもlexical-binding:tつけてないと警告出るの萎えるわぁ
753:名無しさん@お腹いっぱい。
25/06/11 07:21:51.38 .net
navi2ch 、 yatex 、uim で騒がれたのは仕方無いとしても、
.emacs.d/init.el で騒がれたときにはイラっときたよ
754:名無しさん@お腹いっぱい。
25/06/11 07:24:04.12 .net
ついでに、
(setq lexical-binding 't)
↑これを init.el に買いても騒ぐんだよね…
755:名無しさん@お腹いっぱい。
25/06/12 06:06:38.66 .net
それどころかまともに動かないものまででてきたw
31.0.50は過去の資産を潰すG臭が酷い
756:名無しさん@お腹いっぱい。
25/06/12 08:46:37.40 .net
今のところ、foo.el を全く弄らないで、warning をガン無視するのが一番いい()
757:名無しさん@お腹いっぱい。
25/06/12 10:03:05.26 .net
無視するには *Warnings* バッファの ⛔ をクリック(またはカーソルを乗せて RET)
⛔ Warning (files): Missing ‘lexical-binding’ cookie in "/usr/share/emacs/site-lisp/magit/magit-version.el".
You can add one with ‘M-x elisp-enable-lexical-binding RET’.
See ‘(elisp)Selecting Lisp Dialect’ and ‘(elisp)Converting to Lexical Binding’
for more information.
問合せに y で custom-file のファイル(既定値の nil なら .emacs だか init.el だか辺り)に設定が書き込まれる
elisp-enable-lexical-binding をクリックすると当該ファイルに ;; -*- lexical-binding: t; -*- を追記
758:名無しさん@お腹いっぱい。
25/06/13 17:53:43.23 .net
このワーニングが出るバージョンのemacs をインストールした後だと、
navi2ch のビルドにこけるようになるねw
configure かけると
checking detecting your emacs type... Warning (files): Missing `lexical-binding' cookie in "/home/src/GIT/navi2ch/conftemp.3667".
You can add one with `M-x elisp-enable-lexical-binding RET'.
See `(elisp)Selecting Lisp Dialect' and `(elisp)Converting to Lexical Binding'
for more information.
emacs21
checking where icon files should go... Warning (files): Missing `lexical-binding' cookie in "/home/src/GIT/navi2ch/conftemp.3667".
You can add one with `M-x elisp-enable-lexical-binding RET'.
See `(elisp)Selecting Lisp Dialect' and `(elisp)Converting to Lexical Binding'
for more information.
だとw
759:名無しさん@お腹いっぱい。
25/06/13 17:56:56.05 .net
問題は
>conftemp.NNNN
ここにクッキーを求められるところw
760:名無しさん@お腹いっぱい。
25/06/27 12:41:44.45 .net
vterm内で日本語は入力できないのでしょうか?
toggle-input-methodして入力すると
ミニバッファに以下のように出て入力が反映されません
Buffer is read-only: #<buffer *vterm*>
環境はEmacs 28.2 on Debian (Bookworm)です
761:名無しさん@お腹いっぱい。
25/06/27 14:38:07.62 .net
>>760
俺も知りたい
termやeatだったらline-modeにすれば日本語入力できるが癖があって面倒なんだよなあ
762:名無しさん@お腹いっぱい。
25/06/28 09:27:08.77 .net
Eshellがもっと使いものになってればなあ
なんで<が使えないんだよ diff <(....) <(....) みたいなのがやりたいのに
あとgrepの出力に (標準入力) とか表示してくるのヤメロ
763:名無しさん@お腹いっぱい。
25/06/28 11:17:59.37 .net
>>760
試したけどやはりvterm(及び他のEmacs内で動くterminal)で日本語を入力するのは無理じゃないかなあ
vtermを使わず例えば
(defun my-term ()
(interactive "@")
(shell-command (concat "kitty -d " default-directory "> /dev/null 2>&1 & disown") nil nil))
みたいにして外部terminalを立ち上げるのはどうだろう?
terminalやshellの設定でPRIMARYではなくCLIPBOARD セレクションを使うようにすればそれなりにEmacsと連携できるはず
764:名無しさん@お腹いっぱい。
25/06/28 23:40:26.89 .net
単純に日本語を送りたいだけなら、
(defun my-vterm-insert-string (string)
(interactive "sInsert String: ")
(vterm-send-string string t))
とかやれば任意の文字列を送れるけど。
765:名無しさん@お腹いっぱい。
25/06/29 19:43:43.73 .net
以前は、みんな端末側のIMEで変換して、リモートログインした先のemacsで普通に日本語使ってたけど、失伝してるのか。
端末の文字コードとemacsの文字コードを揃えるだけだぞ。
766:名無しさん@お腹いっぱい。
25/06/29 21:28:55.16 .net
vtermということはそういう話ではないのでは
767:名無しさん@お腹いっぱい。
25/06/29 21:41:21.95 .net
vtermに限らずw3mなんかでもtextarea以外でうっかり日本語(ddskk。mozcは問題なさそう)に切り替えちゃったら
Buffer is read-only: #<buffer *w3m*>
って出るよね
あれってどういう原理なのか知りたい
768:名無しさん@お腹いっぱい。
25/06/29 23:55:40.77 .net
skkなんかは変換時の▼とかを直接バッファ編集することで実現してるからでなかったかな
素のmozcも若干input-methodの作法に従ってなくて、mozc-imを入れるとansi-termとかでも普通に日本語入れられるようになるはず
toggle-input-method を叩けるようキーバインド工夫する必要はあるが。
769:名無しさん@お腹いっぱい。
25/06/30 08:32:55.50 .net
27.2以前に戻したらいいよ
770:名無しさん@お腹いっぱい。
25/06/30 13:10:54.51 .net
skkの▼はオーバーレイに変更されたような気がするけど気のせいだったかな...
771:名無しさん@お腹いっぱい。
25/06/30 15:25:05.31 .net
claude codeもgemini cliもgnome terminalや
konsoleではインラインで日本語入力できない
vtermだと日本語入力自体ができない(コピペで入力はできる)
今のところ>>764の方法が一番マシかなぁ
772:名無しさん@お腹いっぱい。
25/06/30 19:35:01.89 .net
>>771
uxrvt、alacritty、kittyあたりはインライン入力できたよ
前二者は機嫌が悪い日は文字が散らついたりしたけどkittyは今まで日本語で問題が起こったことはなし
強いていうならncursesアプリでちょっとおかしくなる程度だがemacs使いには関係ないっしょ
ほんとeshellがもっとしっかりしてくれたらベストなんだがな
773:名無しさん@お腹いっぱい。
25/07/08 01:32:49.31 .net
>>762
eshellは*を付けると外部コマンドを優先するから
cat hoge | *grep foo
とすれば変な出力が付かない
774:名無しさん@お腹いっぱい。
25/07/12 20:20:12.27 .net
>>773
恥ずかしながら知らなかった
サンクス!
775:名無しさん@お腹いっぱい。
25/07/14 08:25:31.72 .net
役に立つ記事かと思ったら単なるconao3への悪口で萎えた
URLリンク(qiita.com)
Emacs界隈は優秀な人が多いのにどうして喧嘩しちゃうのか
776:名無しさん@お腹いっぱい。
25/07/14 22:29:27.28 .net
そもそもストールマンがあれだから
777:名無しさん@お腹いっぱい。
25/07/14 22:32:56.63 .net
ストールマンネタでこのポスト好きw
URLリンク(x.com)
778:名無しさん@お腹いっぱい。
25/07/15 00:58:19.72 .net
フォントに関して(自覚なく)無知なのに、TeXがクソとか言いながら、Donald Ervin Knuthをクソだの言いまくっているアホもいるぐらいだから、そんなもんよ
779:名無しさん@お腹いっぱい。
25/07/15 06:46:32.24 .net
>>777
こんなことしてたな
そしてOSS化したcodeにEmacsが駆逐されかけているのは皮肉なこと
780:名無しさん@お腹いっぱい。
25/07/18 06:10:07.25 .net
28以降はクソ
781:名無しさん@お腹いっぱい。
25/07/24 08:41:30.06 .net
>>775
カタカナ語を日本語として割り切れない発達くさい
782:名無しさん@お腹いっぱい。
25/07/26 05:52:43.07 .net
知恵遅れは洗練された道具としての機能より見栄えを選ぶ
783:名無しさん@お腹いっぱい。
25/07/26 08:06:46.95 .net
エルメスとかシャネル、クリスチャン ディオールの女性物のバッグの事かー
784:名無しさん@お腹いっぱい。
25/07/26 17:18:56.54 .net
Emacsを捨てたおごちゃん氏は今でもNetBeansを愛用しているのだろうか
785:名無しさん@お腹いっぱい。
25/07/28 06:51:31.11 .net
>>783
カッペさんのクルマと同じで、格を表すらしいぞw
786:名無しさん@お腹いっぱい。
25/09/14 18:58:47.40 .net
claude codeとemacsの親和性良過ぎ
LLMモードは乱立してるようだけども
>>764 + vtermでclaude codeが一番使い安いや
claude codeは別にコードを書く用途に限らずチャットとしても使える
文献PDF読ませたりメールの校正させたり
beamerでスライド作らせたり重宝してる
787:名無しさん@お腹いっぱい。
25/09/14 19:09:04.95 .net
そういえば、先月のことだけど Emacs-30.2 がでてるね
788:名無しさん@お腹いっぱい。
25/09/15 06:55:55.65 .net
28以降はクソ
789:名無しさん@お腹いっぱい。
25/09/15 12:37:54.23 .net
neovImから移住してもええの?🐼
790:名無しさん@お腹いっぱい。
25/09/15 14:34:04.01 .net
みんなどの OS で Emacs を使ってるのかな。
ワイは macOS だけど、Mac Port パッチ付きの Emacs を好む関係で
URLリンク(github.com) を使っているが、
最近は Mac Port パッチ URLリンク(bitbucket.org) が以前ほど最新に追随しなくて、うーむ。
Emacs on Linux が一番親和性が高いのは認める。
791:名無しさん@お腹いっぱい。
25/09/15 15:23:53.20 .net
わしはMacPorts民だから脳死でMacPortsのやつ使ってる
792:名無しさん@お腹いっぱい。
25/09/15 16:51:10.05 .net
Linux で使っているの
793:名無しさん@お腹いっぱい。
25/09/15 18:38:45.92 .net
>>787
30.2で思い出したんだけど、先月リリースされた直後にソースアーカイブをダウンロードしようと思ってftp.gnu.orgにアクセスしたら
タイムアウトになって、今アクセスしたらまたタイムアウトでアクセス出来なかった
まあミラーが世界中にあるからそちらを使えば問題無いんだけど、ひょっとしてずっと落ちたままだったりするんだろうか>ftp.gnu.org
794:名無しさん@お腹いっぱい。
25/09/15 18:51:10.24 .net
>>793
2-3日前のことだが、公式FTPサイトがかなり遅かったよ
その時は一晩掛けてWindowsバイナリを落とせた
795:名無しさん@お腹いっぱい。
25/09/15 20:00:58.19 .net
>>790
Emacs Mac Portの動向を追っていたら気付いていると思うけど、
jdtsmith/emacs-mac
URLリンク(github.com)
がupstreamに追従しているから、自分でビルドしたらええよ
796:名無しさん@お腹いっぱい。
25/09/15 23:27:01.43 .net
>>795
トンクス
797:名無しさん@お腹いっぱい。
25/09/16 01:55:04.05 .net
吾輩もMacPortsである
798:名無しさん@お腹いっぱい。
25/09/16 02:30:04.96 .net
自分もMacPortsだけどinline patchを当てて使っている
URLリンク(github.com)
>>795 もビルドしてみた
自分の使い方、解像度だとどちらでもいいなぁ
799:名無しさん@お腹いっぱい。
25/09/16 08:53:19.52 .net
>>795
ありがとう知らなかった
ここしばらく標準版を使っていたがやはりmac portは良い
800:名無しさん@お腹いっぱい。
25/09/16 16:05:32.98 .net
>>799
jdtsmith/emacs-macを追っているけど、しだいにこっちがcomunity版Emacs Mac Portになっちゃうかもな
自分の手元で、オレオレEmacs Mac Port 30.x upstreamを保守していたけど、やっぱみんなでやるほうがバグとか気づきやすい
もっとも、この勢いでupstreamにmergeされてほしいとも思うわ
一番いいのは、いまのNS portといい感じでまとまってほしいと思う
801:名無しさん@お腹いっぱい。
25/09/16 21:49:16.30 .net
>>786
Emacsに特化した要素何一つなくね?
802:名無しさん@お腹いっぱい。
25/09/16 23:32:17.25 .net
>>801
まぁその通りだけども? emacsから<も>便利に使える
Codex CLIもvtermで試してるけどもこれも良いね
M-x docter がようやく完成したような感覚で感慨深い
803:名無しさん@お腹いっぱい。
25/09/17 23:00:49.80 .net
M-x docter 懐かしいw
804:名無しさん@お腹いっぱい。
25/09/18 01:15:24.99 .net
I am the psychotherapist. Please, describe your problems. Each time
you are finished talking, type RET twice.
805:名無しさん@お腹いっぱい。
25/09/18 02:33:55.65 .net
I am addicted to yours. RET RET
806:名無しさん@お腹いっぱい。
25/09/18 10:38:17.19 .net
Why do you say you are addicted to mine? RET RET
807:名無しさん@お腹いっぱい。
25/09/18 10:49:51.11 .net
M-x doctorについてclaudeに聞いてみたが実は起源は相当古く由緒正しいだね
1966年ですか
808:名無しさん@お腹いっぱい。
25/09/18 11:00:24.37 .net
昔のUnix(BSD?)に/usr/games/doctorって入ってた記憶
809:名無しさん@お腹いっぱい。
25/09/18 19:22:27.36 .net
display-alistいじるの楽しいな!
810:名無しさん@お腹いっぱい。
25/09/18 23:43:03.32 .net
lisp は AI
811:名無しさん@お腹いっぱい。
25/09/19 01:06:05.85 .net
pythonに取って代わられたよね?
812:名無しさん@お腹いっぱい。
25/09/19 01:12:30.31 .net
Richard Matthew Stallman の半分はLISPで出来ているので、Python に取って代わられるなんて出来ないよ?
813:名無しさん@お腹いっぱい。
25/09/19 01:38:31.15 .net
lispとかpythonとか遅い動的をなんでaiに使うんかね
ライブラリはcで書かれてるんなら全部cで書けよ
814:名無しさん@お腹いっぱい。
25/09/19 02:33:11.97 .net
80-20の法則を知らないのか?
プログラミングで言えば、全体の20%の部分が実行時間の80%を費やしてると言うことだ
実際は90-10(またはそれ以上)と言っても過言じゃない
Pythonでコードを書いても、ライブラリはカリカリにチューニングされたCで書かれているので、大事な10%の部分はCと同程度の速度で動くから問題ない
815:名無しさん@お腹いっぱい。
25/09/19 07:17:26.95 .net
数値計算のライブラリの肝心な部分はFORTRANなのでは
816:名無しさん@お腹いっぱい。
25/09/19 07:37:53.98 .net
少なくともnumpyは
Python 61.3%
C 33.4%
となってるぞ
今時はSIMD(場合によってはGPUやNPU)を使うから昔の資産とか使わんと思うよ…
817:名無しさん@お腹いっぱい。
25/09/19 07:49:44.67 .net
そうなのか
内部的にOpenBLASとかLAPACKとか使ってるのかと思ってた
818:名無しさん@お腹いっぱい。
25/09/19 12:57:15.11 .net
claude codeとcodex cliとgemini cliをmcpで連携して
これをemacsから使う
凄い時代になったよ
819:名無しさん@お腹いっぱい。
25/09/19 17:03:12.68 .net
>>795
Tahoeでビルドすると動かないようですね
URLリンク(github.com)
820:名無しさん@お腹いっぱい。
25/09/19 17:28:33.06 .net
4.2BSD-Tahoeかと、一瞬思った
821:名無しさん@お腹いっぱい。
25/09/19 23:31:27.65 .net
4.3BSDやろ,Tahoeは
822:名無しさん@お腹いっぱい。
25/09/20 04:54:14.37 .net
そっか、ありがとう
823:名無しさん@お腹いっぱい。
25/09/20 10:57:58.74 .net
>>819
CFLAGSに
-isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk
を追加してconfigureするのがワークアラウンド
824:名無しさん@お腹いっぱい。
25/10/04 06:50:20.05 .net
自分語りで恐縮だが、
仕事で作ってきたPythonコードの引き継ぎに先立ち、リファクタリングの効率化を目指して、
LSPを含めたEmacs環境を構築したんだが、作業を助けてくれる様々な機能に驚かされた。
もっと早く導入すればよかった。
初めからいいコードを書いていれば無駄な作業そのものを減らせたのにと反省もおおい。
825:名無しさん@お腹いっぱい。
25/10/04 08:02:42.73 .net
どんな感じで構築したんだ?
826:名無しさん@お腹いっぱい。
25/10/04 09:15:39.82 .net
どんな感じと言われても、オールインワンなパッケージは苦手なので、emacs-30をベースに
役立ちそうで、評判が高く、新しいものを追加した。
参考にしたのは次の記事だが、全部でなく、コード品質の向上に寄与しそうなEglotと、
ステップ実行したいのでデバッガのDapeが動作することを目指した。
Python用Emacs
www.reddit.com/r/emacs/comments/1em4ua3/emacs_for_python/
827:名無しさん@お腹いっぱい。
25/10/04 09:17:59.44 .net
それから、この辺も
TreesitterとEglotを使ってPython用Emacsを設定する
gist.github.com/habamax/290cda0e0cdc6118eb9a06121b9bc0d7
GNU Emacs で VS Code 相当のコード・デバッグ支援機能を設定する
a-perpetual-novice.HATENABLOG.com/entry/2024/10/30/005400
a-perpetual-novice.HATENABLOG.com/entry/2024/11/01/013058
828:名無しさん@お腹いっぱい。
25/10/04 14:30:22.02 .net
まあ5年遅いな
829:名無しさん@お腹いっぱい。
25/10/04 15:27:40.44 .net
>>828
進化しろよ
830:名無しさん@お腹いっぱい。
25/10/04 15:58:24.20 .net
treesitterもLSPもEmacsとは関係がない
もはやテキストエディターはモジュールを組み合わせる為の土台でしかなくなった
これからは本体をシンプルにしてモジュールを組み合わせる柔軟性が求められる
kitchen-sinkの時代は終わった
831:名無しさん@お腹いっぱい。
25/10/04 17:05:07.59 .net
>>830
じゃあVImが良いってなるやん
emacsならlispで、vscodeならnodejsで拡張できるっていう良さがあるからエディタ選んで楽しむ余地はまだまだあるっしょ
832:名無しさん@お腹いっぱい。
25/10/04 23:41:11.40 .net
>>831
Vimは大量の酷いCコードを整理する必要があるけど、もはや限界がある
VimScriptもお世辞にも使いやすいとは言えない
なのでEmacsの方がマシなのは間違いないけど、Emacsである必要性も薄らいで来てるのもまた事実w
でもorg-modeみたいなキラーモジュールがあるからEmacsを離れられない人がほとんどなのも現実だろう
833:名無しさん@お腹いっぱい。
25/10/05 00:43:52.21 .net
lsp作ったのもmsだしpythonで一番人気のls作ってるのもmsとゆう事実
ゴミみたいなソフトばっか作ってる印象だけど地味にossに貢献しとる
vimはneovimでvimscriptの1000倍速いluaで設定書けるからそれでええやん
834:名無しさん@お腹いっぱい。
25/10/05 00:46:29.22 .net
emacsはなぜか若いナオンに人気
URLリンク(m.youtube.com)
835:名無しさん@お腹いっぱい。
25/10/05 01:00:03.42 .net
てか最近emacs触り始めたけどなんでも()つけないといけないlispてキチゲエみたいな言語やな
プログラム向けとか神の言語とかゆわれてるけどそれならrubyとかputhonのほうが近いやんておもた
836:名無しさん@お腹いっぱい。
25/10/05 05:26:54.44 .net
emacs 30 シリーズも30.2 が出たので、29.x からそれにしたらいきなり egg 関連のパッケージがエラーおこしたが、それは割とすぐに対処できた。
obarray を作るには make-vector の最後の値を nil から0にせよということだ。あるいは obarray-make を使えと。
たとえば:
URLリンク(www.agt.ne.jp)
で、実は手元でローカルにいろいろパッチを当てていた egg 関連の emacs-lisp を emacs 30.2 で compile しようとしたらどうも macroexpand が うまくいかないようでエラーを起こす。
多分どこかでマクロの引数が足りないところなどがあるんだろうけど古いemacsのコンパイラではmacro の展開が緩かったりで発見されていなかった問題かも。
それはともかくその過程で次のパッケージとウェブサイトを知った。
egg-tart (tamago-tsunagi と 追加の説明など) URLリンク(github.com)
やっぱりWnnが好き! URLリンク(wnn.jp)
FreeBSD における Wnn8 URLリンク(maikaze.cafe.coocan.jp)
最後のは自分で .el 書き換えたりしてない人には詳しすぎるかも。
egg.el関連のソースはやはり漸次でもよいから直していかないと emacs 30.x (x > 2), 31.y で使えなくなりそうだけども、そういう観点から更新をしている人は世の中にいるのだろうか?
長く使っている入力方法は簡単に捨てられないので、そういうところがあれば情報を共有したいと思ってるのでした。
837:名無しさん@お腹いっぱい。
25/10/05 06:34:58.15 .net
>>835
いま手元に実物が無いからうろ覚えだけど
A君「LISPは機械を優先して、人にとっての使いやすさを無視した言語なんですか?」
K先生「それはある意味当たっておる。しかし機械が扱いやすいということは、回り回ってその機械を作ったり制御したりする人が楽をできるということでもある。まあ人と機械が歩み寄ったと思えば美談じゃ」
みたいな会話を読んで目から鱗が落ちたことがある
URLリンク(www.shoeisha.co.jp)
838:名無しさん@お腹いっぱい。
25/10/05 09:16:32.78 .net
28以降はクソ
839:名無しさん@お腹いっぱい。
25/10/05 09:26:00.51 .net
>>835
Emacsの歴史を知るとその疑問が解けるかもしれないよ
GNU EmacsがEmacs Lispを採用したのは2番目のリンクで、どちらも日本語だが英語版より古い
URLリンク(ja.wikipedia.org)
URLリンク(www.gnu.org)
840:名無しさん@お腹いっぱい。
25/10/05 10:14:50.33 .net
ややこしい歴史をたどんなくても
・lisp が完全な高級言語の中で最も小さなインタプリタで実装できたから(当時はメモリとか貴重だった
・rms は MIT の AI研にいて lisp まわりの仕事してて詳しかった
の2点で十分じゃよ
841:名無しさん@お腹いっぱい。
25/10/05 12:16:54.94 .net
>>835
Lispが神の言語なのにはちゃんと理由がある
要約すると、括弧とシンボルと幾つかのオペレーター(例えばcarやatomなど)があれば言語を構築出来ることを「発見」したから
あと、構造化編集で調べれば分かるけど、括弧があるお陰で編集がめちゃやり易くなる
括弧の対応は自動でされる
それとLisperは括弧じゃなくてインデントを見るので括弧が気にならなくなる
もはや欠点が無いw
842:名無しさん@お腹いっぱい。
25/10/05 13:27:59.02 .net
インデントを見るといえばpythonだけど、個人的にはpythonにカッコついてればいいのにと思う
843:名無しさん@お腹いっぱい。
25/10/05 15:09:45.47 .net
>>841
極論を言えばプリミティブは lambda と eval さえあれば後はそれを使って全部実装できるって話はあるからな
入出力とかは全部 eval が担当はインチキだけど
844:名無しさん@お腹いっぱい。
25/10/05 16:38:29.06 .net
doom emcas起動したらcpuが100張り付いたんだけどemacsてこんなに重いん?
845:名無しさん@お腹いっぱい。
25/10/05 16:51:29.98 .net
>>842
HyというLispがあるよ
使ったこと無いけど、Pythonとの親和性を求めるなら良いかもね
846:名無しさん@お腹いっぱい。
25/10/05 16:53:40.92 .net
>>844
裏でネイティブコードのコンパイルが行われてる
一度やれば次起動した時は負荷は上がらないけど、パッケージを更新するとまたコンパイルが走って一時的に負荷が上がる
847:832
25/10/06 02:43:16.18 .net
>> 152
> ChatGPT in Emacs
> URLリンク(youtu.be)
30.2 で tamago のバイトコンパイルどころかロードも失敗するのは、上の emacs に特化した? chatgpt の対話窓口で数時間かけてデバッグしたら解決した。
なかなか参考になる体験。最初の数時間はうまくいったんだけど、最後の1時間半くらい、chatgpt が自分で定義した関数の引数の数と、
テスト用に示してきた関数での利用例での引数の数がマッチしてなくて、それで大混乱して1時間半くらい無駄にした。
こちらの手元の関数定義と向こうが考えてる修正中の定義が微妙にずれていたりするのかもしれない。
あと、なぜか、lisp の対話システムとしては致命的だがときどきカッコのマッチがおかしいのを出力する。シンタックスエラーで分かるからいいんだけど。
そんなわけで、defmacro の問題点は全部解決した. hangul.el は defmacro を修正したら今度は最後関数ボディが巨大になりすぎてコンパイルできないので、
マクロ利用をやめたり。
とりあえず、手元の tamago の .el ファイルはエラーせずに全部コンパイルできるようになった。
それをバイトコンパイルしたもので 30.2 で日本語入力が手元の FreeWnn4 使ってるDebian/Linux でできてる。
第一歩すすんだ。
修正案:
1. 終了: ‘inhibit-point-motion-hooks’ is an obsolete variable (as of 25.1); use ‘cursor-intangible-mode’ or ‘cursor-sensor-mode’ instead
対応。
2.stirng-as-unibyte, string-as-multibyte の置き換え。
対応中。 ただし、これは日本語サーバー使ってる部分しかテストできない。
3. 上の 1 に関連して 'tangible text property の利用をやめる方向でそれを取り除くのも chatgpt と相談しながらできるかもしれないと思い始めたところ。
生成AI でのコーディングは実用になる。結果が正しいかどうかはコンパイラ、インタプリタ―でテストは知らせれば真偽がわかる。
レポートの調査は、「これこれはこのURLに書かれています。」と言われて、本当かと調べたらなかったことが考えられないほどの頻度であるので、そういう使い方には向いてないと思う。
Emacs に特化した窓口を教えてくれた152に感謝。