Emacs Part 52

レス数が900を超えています。1000を超えると表示できなくなるよ。
2020/03/25(水) 17:45:02.71
GNU Emacs - GNU Project - Free Software Foundation (FSF)
https://www.gnu.org/software/emacs/

EmacsWiki: サイトマップ
http://www.emacswiki.org/emacs/

前スレ
Emacs Part 51
https://mevius.2ch.net/test/read.cgi/unix/1514601894/
Emacs Part 50
https://mevius.2ch.net/test/read.cgi/unix/1482097785/
2021/02/24(水) 21:42:51.25
同じく。
ファイル名は昔ながらのUNIXでは使えない記号、全角文字、空白は使わないようにしてる。
ダウンロードしたファイルやWindowsから持ってきたファイルだとたまに面倒
2021/02/24(水) 21:52:14.08
WSLが使えるようになって、shellで感じを使う機会が多くなっているんだな。
2021/02/24(水) 23:12:32.80
漢字grepやfindで多用するけどなあ
2021/02/24(水) 23:32:05.06
今はtermだけkkcで我慢してるけど限界来したらskk諦めてemacs-mozcすっかね
まあarchのemacs-mozcはfcitx-mozcとの競合をfixする工程含めてうんこオブうんこだからどっちかのIMかarch諦めることになるんだが
テラワロリンティヌス
830名無しさん@お腹いっぱい。
垢版 |
2021/03/24(水) 11:08:06.82
ぐるぐるぐるぐるぐる
2021/03/25(木) 09:29:07.23
定期的に例の自演おじみたいなのが涌いて意味不明な鳴き声上げるの汚すぎる
832名無しさん@お腹いっぱい。
垢版 |
2021/03/26(金) 16:42:00.43
ぐるといっしょに FSF も解散やろ
わしはすきやけどぐる
2021/03/27(土) 00:13:03.53
自演ガイジ死んでくんねえかな
834名無しさん@お腹いっぱい。
垢版 |
2021/03/27(土) 14:03:46.12
そらいつかはタヒぬやろ
そしたら M1 で libgccjit できるやろか
2021/03/28(日) 14:36:56.04
即自演始めてアスペや支離滅裂な病理まで披露するのか
汚らわしいなあ
2021/03/28(日) 21:56:09.60
おじいちゃんの自演スレ
2021/03/29(月) 12:33:36.09
27.2がリリースされてるな

Released Mar 25, 2021
Emacs 27.2 is a maintenance release.
The behavior of the user option 'resize-mini-frames' has changed.
2021/04/11(日) 21:34:18.32
string-match の後の match-string 関係の挙動がおかしい
Emacs 27.2 の scratch で info の Elisp の Simple Match Data のサンプルコードを実行するとぜんぜん違う結果になる
Emacs 26.3 だとサンプル通りの結果になる
2021/04/11(日) 23:08:48.71
試してみたけど、例示通りの出力だったよ。
どんな結果になったの?
2021/04/12(月) 00:29:10.45
>>839
こんな結果です
(string-match "\\(qu\\)\\(ick\\)"
"The quick fox jumped quickly.")
4
(match-string 0 "The quick fox jumped quickly.")
"d q"
(match-string 1 "The quick fox jumped quickly.")
nil
(match-string 2 "The quick fox jumped quickly.")
nil
Mac 用の Emacs Mac Port なので、そのせいかも
Ubuntu の Emacs 26.3 は問題なかったです
2021/04/12(月) 07:47:09.14
おかしいのは scratch だけで関数内では問題ないみたいです
こういうのはどこに報告すればいいんですかね?Unix 自体初心者なもので
2021/04/12(月) 09:28:50.89
emacs -qでも同じなら環境依存っぽいのでポーティングの開発元かな。
バイナリパッケージならポートの自前ビルドを用意して検証するとか、Mac環境はめんどくさいんだっけ。

当方はFreeBSD 13-RELEASEのportsからビルドしたEmacs 27.2です。
2021/04/12(月) 12:48:24.49
すみません、結局自分の init.el が原因でした
run-with-idle-timer で0.1秒おきに Mac のインプットメソッドをチェックしていたのを1秒おきに変更したら不具合解消しました
助言してくれた方、ありがとうございました
2021/04/15(木) 16:20:00.02
lisperだからemacs勉強しようと一通りマニュアル三部作目を通したけど全く操作が覚えられないのでvimでelを書いてる
regexビルトインとワークスペースとしてのbufferが便利なので、
/home/me/binの俺スクリプトのel率が急上昇してきた
guileがel サポートしてるらしいのでインタプリタとして使う層はそっちのがいいのかな?
infoにはschemeの事ばっか書いてて、(エディタ固有機能除いても)ちゃんと実装されてるのか不安になるんだが
2021/04/15(木) 17:47:41.34
SLIME 導入あたりか
2021/04/15(木) 18:23:17.99
swank/slimeあたりはmelpaでよしなに、clのみならずscmも対応してるとは知らなかった
環境構築楽っていいね
でも使い慣れたvimからも引ける事に気付いてしまったのですよ…

elモードだけどC-u C-x C-b(だったか)、eval-last-sexpをミニバッファじゃなく*scratch*にダンプできるのがとても便利だね
まあvimでもバインドできると思うけど、ちゃんとdoc読んでないや()
vimは慣れさえすればマクロ記録&リピートの力技で大抵なんとかなるし快適なんだな

見た目だけpython風でコメントアウトすらままならないvimscriptには深入りしたくないです…

というわけでemacs/el勉強していきますよー
2021/04/15(木) 18:27:12.84
C-h t (or M-x help-with-tutorial)を何回かやれば最低限の操作は覚えると思う
2021/04/15(木) 21:29:26.65
vimに慣れてるなら、spacemacsとかdoomとかもありでは?
2021/04/15(木) 23:15:36.87
spacemacsは素のEmacsからかけ離れてるから、普通にelvis入れる程度でいい気がする
2021/04/16(金) 06:24:50.87
何故今elvis(笑)
851名無しさん@お腹いっぱい。
垢版 |
2021/04/17(土) 05:48:40.71
どこの板で聞けばいいかわからなかったのですがこちらにて質問します。
macOS Big SurでNS版Emacsを使ってます。NFC文字とNFD文字が混在しているファイルを
開いた場合にそれらを区別して表示したいのですがどうすればいいでしょうか?例えば

% cat a.txt | od -tx1c
0000000 e3 82 b9 e3 82 99 e3 82 ba 0a
ス ** ** ゙ ** ** ズ ** ** \n
0000012

のようなファイルa.txtを私のEmacsで開くと
ズズ
のように表示されて区別が付きません。これを
ス゛ズ
のようにNFD文字であれば濁点などを分離して表示させたいです。
852名無しさん@お腹いっぱい。
垢版 |
2021/04/17(土) 09:30:02.34
>>851
(global-auto-composition-mode -1)

特定のモードでのみ無効にしたい場合は global- の付いてない方の呼び出しをフックに登録
こんな感じで:

(add-hook 'prog-mode-hook (lambda () (auto-composition-mode -1)))
2021/04/17(土) 09:32:05.24
便乗質問ですが
分離表示じゃなくてNFDの分離表現されている文字にfaceを指定する方法があれば
誰か教えてくれないでしょうか。
2021/04/17(土) 10:29:38.18
>>852
ありがとうございました!
2021/04/17(土) 11:27:01.88
XEmacsにWanderlust入れてメールとNetNewsを読むんだ…
2021/04/17(土) 11:56:40.07
>>848
学ぶ事自体が目的なのでそういうのはevilです
ところでe'vi'lってのあるのね
857名無しさん@お腹いっぱい。
垢版 |
2021/04/17(土) 14:04:04.15
>>853
これでいいのかな
https://pastebin.com/FQep8kJV
2021/04/17(土) 16:02:02.90
>>857
ありがとうございます。
手元のテストテキストで見事に色が付きました。
2021/04/17(土) 21:30:19.38
>>850
今見たけど、確かにelvisてw
evil-modeのつもりだった
elvisも散々世話にはなったけどね
860名無しさん@お腹いっぱい。
垢版 |
2021/04/18(日) 08:10:09.29
wanderlust 懐かしい
スレッド表示や未読管理ができるのが便利だった

mewは未読管理はできなかった気がする
2021/04/20(火) 16:21:13.87
>>857
GJ!
ぱっと実装できてしまうところが羨ましい。
2021/04/21(水) 12:10:09.46
最近使い始めたvtermっていうかmulti-vtermええな
tmuxでプレフィックスctrl+zでemacsライクにしてたら肝心のemacsでctrl+xの打ち間違いが多発してた
863名無しさん@お腹いっぱい。
垢版 |
2021/04/24(土) 11:25:39.79
Emacs Lispに後方互換性はどのくらいありますか?
MuleとかEmacs 20の頃のものを使いたく
2021/04/24(土) 12:32:56.45
非互換な変更ってそんなに多くはないけど、完全にそのまま動くってほどじゃないんだよね。
エラーが出るたびに対応してくってのができるなら、じきに安定させられるとは思う。
2021/04/24(土) 16:55:28.22
言語仕様自体はlexical bindingが導入された位で変化無いけど、ライブラリ内の関数とか非互換な変更がちょくちょく入るから、Muleの頃のコードは動く気がしない
単純なら動くだろうけど
2021/04/25(日) 09:58:20.21
emacsはそんなにだけど、lisp環境はemacsを軸にして退化してる感はある
まあフリーだと一番だと思うけど、だからこそ駆逐してしまって、それでいてフェードアウトしつつあるっていう

昔のlisp環境は大体組み込みprolog付いててダンプ検死やパターンマッチに便利だったけど、今は外部ライブラリになってしまったな
eclのprologも洗浄されてしまったし、今でも生きてるのはlispworks/hemlock(emacs変種)くらいか
2021/04/25(日) 10:00:42.85
emacsがlispの足を引っ張ったというのはありそう
2021/04/25(日) 10:06:31.34
実装なんていくらでもあるし、自分で入れろって話だけど、体験が無いと価値が分からんという事もある

そのemacs自体も望まずとも体験するという機会が減ってしまったな
そうだ、スタンドアロンinfoリーダをemacsで置き換えてしまえ(提案)
2021/04/25(日) 11:47:59.58
>>862
そんなにええんか?
kwsk
2021/04/25(日) 14:53:37.05
mule-2.3時代に書いたLispプログラムは今でも主役として使ってる。deprecatedとか
めちゃくちゃ出るけどemacs-27でも警告止まりだから後方互換性についてはかなり
いいと思います。それに比べ最近覚えたSwiftはappleの気分でころころ仕様が
変わるからもう嫌になってる
2021/04/25(日) 18:09:57.58
emacsは好きでもう20年近く使い使い続けているけど、lispが嫌い。
スコープとか文法とか異端過ぎてムリポ。
2021/04/25(日) 18:27:56.09
とはいえ、emacsの利点ってなんでもlispでやれることしかないんじゃないか
2021/04/25(日) 19:21:49.54
>>872
何でもやれるので、他人が便利なものをガンガン作ってくれます(くれました)。
2021/04/25(日) 21:41:56.44
>>871
20年使い続けててスコープに不満が有るって、どういう事よ?
2021/04/25(日) 22:08:49.53
日本語関係のライブラリがだいぶ変わった気がする
2021/04/26(月) 10:49:31.57
guileが頑張ればもしかしたらブレイクスルーかも?
https://www.gnu.org/software/guile/manual/guile.html#Emacs-Lisp
emacsのコアにできたらなって野心的な事書く割にundocumentedですね、あっ…

t/f/nilの悪魔合体三値論理で相互互換だとよ
どうせならclも入れて第2のビッグクランチ起こそうぜ!
https://i.imgur.com/h6qXF7E.jpg
2021/04/26(月) 11:06:00.07
大抵のgnuアプリにインターフェイス用意されてて、OSインターフェイスもgnu/linux想定なのでとても簡潔
快適なのに全然流行らないguile…名前か!名前が悪いのか!?

clは制定時にunixがマイナーだったので、インターフェイスの定義が一般的過ぎて辛い
cltlの、現在普及してるパス表示/概念検討の項では、/は俎上にも上がってないっていう
結果として実装毎にバラバラで、最低uiopかそれ以上のライブラリは必須になってしまった

winもMacもunix…というかgun/linuxに寄り添ってきてるし、emacs/guileが決め打ちしていい頃合いではないかと思う
2021/04/26(月) 11:09:38.74
(まだemacsの求心力が残っているうちに…)
879sage
垢版 |
2021/04/26(月) 13:41:42.65
>> 814

私も free wnn jserver つかっている。linux.kinput-wwn も使っている。

4-5年前に X の XIMのライブラリコードにバグがあって、それをfirefox/thunderbird がトリガーしてしまい、FF/TB でアドレス入力の時などに、プルダウンメニューがうまくつかえないという時期があり、
それでfictx だったか、中国系の XIMの利用者もかなり減ってしまい、firefox の利用者統計だと kinput2風のXIMで東アジアの文字入力してるのは IM利用者のなかでも0.1% 以下らしい

なんで、ユーザだけの力で大きなバグの改修(ときどきjserver サーバーが死ぬ、するとkinput2 も巻き込まれて死ぬ)とか改良はむりだろうなと。

ここはEmacsのスレなんで、Emacsのからみでいくと egg というもはやメインテナンスされてないと思われるwnn対応の入力モード使っているが、それと評判の高い org-mode の相性が悪い。
transparentだったかummutable だったかの 属性のあるマーカー(領域?)か何かの扱いで衝突してしまう。
なので、org-mode の恩恵にあずかれてない。
ちょっと調べたけど他力本願モード。
中と半端に直したせいかときどき変換途中の領域が書き換えできないまま残ってしまうことが
あって、簡単に直せないことだけは分かった。

Wnn7使ってるという投稿があったが、その方はorg-modeは試してないのかな?
2021/04/26(月) 15:43:54.69
egg?
ヤマンバギャルってのも居ましたっけ?
2021/04/26(月) 18:00:49.45
>>879
そりゃあまた…
eggってもうメンテされてないのか。
自分はもうskkにしちゃったんで、あれなんだが、
org-modeが使えないなんて、そんなIM使う理由の半分くらいなくなっちゃうな、個人的には。
org-mode使ってると、PC使っている間に行う全入力の半分くらいはemacs上でになってしまうので。
emacsでの日本語入力はやっぱりskkが一番いいと思うわ。
yaskkserv使えば、多少はmozcの恩恵にも預かれるしw
2021/04/26(月) 21:15:33.92
tamagochy
2021/04/29(木) 09:38:00.50
ネイティブコンパイルEmacsの登場
https://blog.tomoya.dev/posts/hello-native-comp-emacs/
884名無しさん@お腹いっぱい。
垢版 |
2021/04/29(木) 10:38:26.81
>>882
2021/04/29(木) 10:44:12.72
240%速度早いのか
886名無しさん@お腹いっぱい。
垢版 |
2021/04/29(木) 13:23:15.44
日々とん久々に見たけどエライ白くなったなあ
2021/04/29(木) 20:49:47.82
>>883
キタ━━━━(゚∀゚)━━━━!!
2021/04/29(木) 22:12:04.12
夢が広がる
2021/04/30(金) 00:54:34.94
今までもコンパイルしてたんじゃないの?
ネイティブとネイティブじゃない違いかもしれないが。
よくわからんかったのは僕だけ?
2021/04/30(金) 02:21:38.45
今までのは簡素なスタックマシーン(Emacs VM)のバイトコードに変換するもの
今回はさらにlibgccjitを利用してネイティブコードに変換するもの

詳しい仕組みはAndrea CoralloのELS2020の資料がわかりやすいかも?
http://akrl.sdf.org/gccemacs_els2020.pdf
2021/04/30(金) 06:37:13.57
packageにしてくれ
2021/04/30(金) 09:09:54.53
VM無しで実行出来るコードにするのね。
2021/04/30(金) 09:12:55.65
でも今どきのVM一般ってネイティブと遜色ないやん
2021/04/30(金) 11:08:49.56
それはJITとかしてるVMでemacsのVMはそこまでではなかったということかな
2021/04/30(金) 12:08:10.10
>>890
リンク切れてるね
https://www.european-lisp-symposium.org/2020/
↑このページの一番下にあるpdf(かなり大きい)に含まれてた
2021/04/30(金) 13:41:33.12
なんやかんやEmacsもハッテンしてるね
2021/04/30(金) 14:04:06.26
英語が得意でないとハッテン場の出入りが不自由。
2021/04/30(金) 14:30:42.57
JIT手を見る
899名無しさん@お腹いっぱい。
垢版 |
2021/04/30(金) 23:13:53.94
>>897
IT本読破件数が充分なら英語力はそこそこでも良いみたいだぞ?(ネイティブの人たちは親切だし
2021/05/01(土) 11:49:29.80
emacsのコマンド名で鍛えた英語力でOK
2021/05/01(土) 13:35:12.36
僕はニチアサで鍛えた英語力で
2021/05/01(土) 15:05:32.23
そうか
良く拡げとか無いと尻が裂けるな
2021/05/02(日) 01:00:45.99
native-comp 版に移行したが、体感としての違いはワカラン
Emacsにあんまり重い処理はさせてないからなあ
2021/05/02(日) 03:06:07.65
elispで長大な処理をさせるものじゃないと効果は見えづらいだろうね
例えばlsp-modeは公式ドキュメントにresulting in more than 200% speedupとある
org-modeも軽くなる局面がある気がしている
2021/05/02(日) 10:31:12.75
何だかんだ最近のエディタにIDE並みの機能求めるからな
2021/05/02(日) 11:11:50.57
その元祖が emacs なので。
2021/05/02(日) 11:36:14.32
ディストリのパッケージマネージャー使ってるんだが、そのnative-comp版ってのは普通にアプデとして降ってくんの?
2021/05/02(日) 12:18:41.86
27.3とかで正式リリースなのでは
2021/05/02(日) 12:20:18.68
いや28か
2021/05/02(日) 12:20:55.88
無理して不安定なハシリに飛びつく必要無し
2021/05/02(日) 12:28:10.46
vimもvim9scriptで速くなるみたいだしvscodeが伸びてるのが刺激になっているのか
2021/05/02(日) 12:33:40.55
vscodeのMSご謹製 Remote Development プラグイン良く出来とるからな。
2021/05/02(日) 13:16:27.35
helmとかは速くなるのかな
2021/05/02(日) 15:15:42.16
>>911
vim躍進はvscodeのlsp使えたのが大きいね、あと非同期処理はemacsみたいに外部に投げてたけどネイティブ対応した

9はluaより速かろうがvimscriptなので…
コマンド毎に文法と引数解釈が違う、スクリプトとインタラクティブでまた仕様が微妙に違うとか、まるでcmdエグゼ
本当にキモい言語
elispも一般的にはキモい類だろうけど、血筋がよいので(根っこは)一貫性がある

あと、vimにもautoloadの仕組みが最近普及してきたので、対応コードなら既にオーバーヘッドなんて問題になってないと思う
(emacsのautoloadとは結構違う)
2021/05/02(日) 15:38:49.67
>>911
.vimrc 書いていくと init.el と違って起動の遅さが如実に使い勝手に影響が出る
(emacsは眠らない)
だから速度アップの恩恵の受け方は vim には vimの
emacs には emacs の恩恵があるはず
2021/05/02(日) 15:53:11.48
>>915
vimはautoload用のディレクトリ階層作るのが面倒よな、コードも二重読み込みフラグやマイナーモードへのデリゲートあたりを書き換えないとならず仕様が複雑
対応/保守してないパッケージは手を加えるしかない

これに関しては(autoload 'fun "file")並べるemacsに一票
2021/05/02(日) 18:47:41.49
つか、そもそもemacsは起動終了繰り返すような使い方しないからなあ。
vimは都度都度終了するが。
2021/05/02(日) 19:03:06.51
起動が速いからviが好き!
という知り合いもいたけど正直書くより先に考えた方がいいんじゃねえかというコードを生産してた
2021/05/02(日) 19:11:18.83
LISPが動くことがEmacs使う体外的な理由だったが、node.jsが動くvscodeの登場でEmacsの圧倒的な優位は揺らいだな
まあ好きだし神lisp多いから使うんだけど
2021/05/02(日) 19:38:14.51
年内に27系最終リリースという感じかしら?
https://lists.gnu.org/archive/html/emacs-devel/2021-04/msg01080.html
2021/05/02(日) 19:43:21.37
>>918
たぶん vi は git や history_file など本当に最小限の機能さえあれば良いものに使い
大抵は vim 使っていると推測
2021/05/02(日) 21:00:10.02
>>919
emacs-ngならtypescript(deno)が動くよ
2021/05/02(日) 21:26:42.03
emacs-ngもなかなか面白そうではあるのだよな
https://github.com/emacs-ng/emacs-ng
elispそのものを置きかえる気はなくて、Emacsだと外部プログラムの力を
借りざるを得ない所を、内蔵のdenoで済ませる感じ
2021/05/03(月) 08:54:22.81
一瞬ELPAとかのパッケージ配布はどうなるんだろうと思ったけど
ああいうのは.elだけ配布してインストール時にbyte compleしているのかな
もしそうなら.elcが.elnに変わっても問題ない訳か
2021/05/04(火) 14:40:02.63
ネイティブコンパイルってことは
CでもC++でもFORTRANでもemacsの関数を書けるってことかな?
2021/05/04(火) 17:04:00.08
そういう意味のわからない発想はどこから来るんだろう
レス数が900を超えています。1000を超えると表示できなくなるよ。