Emacs Part 54 (849レス)
上下前次1-新
1: 2022/12/02(金)11:08 AAS
GNU Emacs - GNU Project - Free Software Foundation (FSF)
外部リンク:www.gnu.org
EmacsWiki: サイトマップ
外部リンク:www.emacswiki.org
前スレ
Emacs Part 51
2chスレ:unix
Emacs Part 50
2chスレ:unix
Emacs Part 52
省3
820: 10/04(土)06:50 AAS
自分語りで恐縮だが、
仕事で作ってきたPythonコードの引き継ぎに先立ち、リファクタリングの効率化を目指して、
LSPを含めたEmacs環境を構築したんだが、作業を助けてくれる様々な機能に驚かされた。
もっと早く導入すればよかった。
初めからいいコードを書いていれば無駄な作業そのものを減らせたのにと反省もおおい。
821: 10/04(土)08:02 AAS
どんな感じで構築したんだ?
822: 10/04(土)09:15 AAS
どんな感じと言われても、オールインワンなパッケージは苦手なので、emacs-30をベースに
役立ちそうで、評判が高く、新しいものを追加した。
参考にしたのは次の記事だが、全部でなく、コード品質の向上に寄与しそうなEglotと、
ステップ実行したいのでデバッガのDapeが動作することを目指した。
Python用Emacs
www.reddit.com/r/emacs/comments/1em4ua3/emacs_for_python/
823: 10/04(土)09:17 AAS
それから、この辺も
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
824(1): 10/04(土)14:30 AAS
まあ5年遅いな
825: 10/04(土)15:27 AAS
>>824
進化しろよ
826(2): 10/04(土)15:58 AAS
treesitterもLSPもEmacsとは関係がない
もはやテキストエディターはモジュールを組み合わせる為の土台でしかなくなった
これからは本体をシンプルにしてモジュールを組み合わせる柔軟性が求められる
kitchen-sinkの時代は終わった
827(1): 10/04(土)17:05 AAS
>>826
じゃあVImが良いってなるやん
emacsならlispで、vscodeならnodejsで拡張できるっていう良さがあるからエディタ選んで楽しむ余地はまだまだあるっしょ
828: 10/04(土)23:41 AAS
>>827
Vimは大量の酷いCコードを整理する必要があるけど、もはや限界がある
VimScriptもお世辞にも使いやすいとは言えない
なのでEmacsの方がマシなのは間違いないけど、Emacsである必要性も薄らいで来てるのもまた事実w
でもorg-modeみたいなキラーモジュールがあるからEmacsを離れられない人がほとんどなのも現実だろう
829: 10/05(日)00:43 AAS
lsp作ったのもmsだしpythonで一番人気のls作ってるのもmsとゆう事実
ゴミみたいなソフトばっか作ってる印象だけど地味にossに貢献しとる
vimはneovimでvimscriptの1000倍速いluaで設定書けるからそれでええやん
830: 10/05(日)00:46 AAS
emacsはなぜか若いナオンに人気
動画リンク[YouTube]
831(4): 10/05(日)01:00 AAS
てか最近emacs触り始めたけどなんでも()つけないといけないlispてキチゲエみたいな言語やな
プログラム向けとか神の言語とかゆわれてるけどそれならrubyとかputhonのほうが近いやんておもた
832(2): 10/05(日)05:26 AAS
emacs 30 シリーズも30.2 が出たので、29.x からそれにしたらいきなり egg 関連のパッケージがエラーおこしたが、それは割とすぐに対処できた。
obarray を作るには make-vector の最後の値を nil から0にせよということだ。あるいは obarray-make を使えと。
たとえば:
外部リンク:www.agt.ne.jp
で、実は手元でローカルにいろいろパッチを当てていた egg 関連の emacs-lisp を emacs 30.2 で compile しようとしたらどうも macroexpand が うまくいかないようでエラーを起こす。
多分どこかでマクロの引数が足りないところなどがあるんだろうけど古いemacsのコンパイラではmacro の展開が緩かったりで発見されていなかった問題かも。
それはともかくその過程で次のパッケージとウェブサイトを知った。
egg-tart (tamago-tsunagi と 追加の説明など) 外部リンク:github.com
やっぱりWnnが好き! 外部リンク:wnn.jp
FreeBSD における Wnn8 外部リンク[html]:maikaze.cafe.coocan.jp
省3
833: 10/05(日)06:34 AAS
>>831
いま手元に実物が無いからうろ覚えだけど
A君「LISPは機械を優先して、人にとっての使いやすさを無視した言語なんですか?」
K先生「それはある意味当たっておる。しかし機械が扱いやすいということは、回り回ってその機械を作ったり制御したりする人が楽をできるということでもある。まあ人と機械が歩み寄ったと思えば美談じゃ」
みたいな会話を読んで目から鱗が落ちたことがある
外部リンク:www.shoeisha.co.jp
834: 10/05(日)09:16 AAS
28以降はクソ
835: 10/05(日)09:26 AAS
>>831
Emacsの歴史を知るとその疑問が解けるかもしれないよ
GNU EmacsがEmacs Lispを採用したのは2番目のリンクで、どちらも日本語だが英語版より古い
外部リンク:ja.wikipedia.org
外部リンク[html]:www.gnu.org
836: 10/05(日)10:14 AAS
ややこしい歴史をたどんなくても
・lisp が完全な高級言語の中で最も小さなインタプリタで実装できたから(当時はメモリとか貴重だった
・rms は MIT の AI研にいて lisp まわりの仕事してて詳しかった
の2点で十分じゃよ
837(1): 10/05(日)12:16 AAS
>>831
Lispが神の言語なのにはちゃんと理由がある
要約すると、括弧とシンボルと幾つかのオペレーター(例えばcarやatomなど)があれば言語を構築出来ることを「発見」したから
あと、構造化編集で調べれば分かるけど、括弧があるお陰で編集がめちゃやり易くなる
括弧の対応は自動でされる
それとLisperは括弧じゃなくてインデントを見るので括弧が気にならなくなる
もはや欠点が無いw
838(1): 10/05(日)13:27 AAS
インデントを見るといえばpythonだけど、個人的にはpythonにカッコついてればいいのにと思う
839: 10/05(日)15:09 AAS
>>837
極論を言えばプリミティブは lambda と eval さえあれば後はそれを使って全部実装できるって話はあるからな
入出力とかは全部 eval が担当はインチキだけど
840(1): 10/05(日)16:38 AAS
doom emcas起動したらcpuが100張り付いたんだけどemacsてこんなに重いん?
841: 10/05(日)16:51 AAS
>>838
HyというLispがあるよ
使ったこと無いけど、Pythonとの親和性を求めるなら良いかもね
842: 10/05(日)16:53 AAS
>>840
裏でネイティブコードのコンパイルが行われてる
一度やれば次起動した時は負荷は上がらないけど、パッケージを更新するとまたコンパイルが走って一時的に負荷が上がる
843: 832 [832] 10/06(月)02:43 AAS
>> 152
> ChatGPT in Emacs
> 動画リンク[YouTube]
30.2 で tamago のバイトコンパイルどころかロードも失敗するのは、上の emacs に特化した? chatgpt の対話窓口で数時間かけてデバッグしたら解決した。
なかなか参考になる体験。最初の数時間はうまくいったんだけど、最後の1時間半くらい、chatgpt が自分で定義した関数の引数の数と、
テスト用に示してきた関数での利用例での引数の数がマッチしてなくて、それで大混乱して1時間半くらい無駄にした。
こちらの手元の関数定義と向こうが考えてる修正中の定義が微妙にずれていたりするのかもしれない。
あと、なぜか、lisp の対話システムとしては致命的だがときどきカッコのマッチがおかしいのを出力する。シンタックスエラーで分かるからいいんだけど。
そんなわけで、defmacro の問題点は全部解決した. hangul.el は defmacro を修正したら今度は最後関数ボディが巨大になりすぎてコンパイルできないので、
マクロ利用をやめたり。
省12
844: 10/06(月)07:06 AAS
>>831
XML: その通り
JS: おまえが言うな({[]})
845: 832 [832] 10/06(月)10:59 AAS
訂正:使ったのは 次だった。271に感謝。
>> 271
> 外部リンク:chat.openai.com
846: 10/07(火)14:52 AAS
>>826
もはやも何も昔からEmacsは環境…
847: 10/09(木)12:00 AAS
28以降はクソ環境
848: 10/09(木)17:19 AAS
こっちと同じ話になってる
Unixの哲学は単機能ツールの組合わせ→emacs え?
2chスレ:linux
849: 10/11(土)15:25 AAS
ewwの使い勝手がいまいちなんだよね
webページがフレームだと使い物にならない
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 1.264s*