元スレEmacs Part 52
emacs覧 / PC版 /みんなの評価 :
252 = :
http://lets-emoji.com/rolling-on-the-floor-laughing-emoji/
253 = :
>>250
やさしい
254 = :
この話の締めに昔話などを
以前 RAM という雑誌があって Lisp の解説連載があってな
ある号に Lisp インタプリタのソースが全部掲載された
記述言語はインテルの8080のアセンブラ
8080のアセンブラには関数なんて気の利いたものはなかった
だから(Lispの)関数やスペシャルフォームはサブルーチンとして実装された
インタプリタ起動後に desubr かなにかでシンボルにアドレスを対応させた気がする
当時は雑誌に掲載されたプログラムを手入力して実行したものじゃった
40年ほど前の話かの
255 = :
は?関数とサブルーチンが同じとかニワカもいいところだな
やれやれ
256 = :
シメられて締めって頑張るのうw
257 = :
分かってない爺がマウント取りたくて必死なのだ。
258 = :
終わらせようってのになんで続けたがるのか
はっきり言えるのは
>>254
>だから(Lispの)関数やスペシャルフォームはサブルーチンとして実装された
に対して
>>255
>は?関数とサブルーチンが同じとかニワカもいいところだな
という返しは意味を理解できなかったということ
「愚かな厚顔無恥」に昇格だな
259 = :
え、おわらないみたいだから、おいらも昔話(ぽいの)。
LISP 1.5 Programmer's Manual(アマゾンでかえるよ)でもうspecial formってでてくるのね。んでfunctionじゃないぜ、と。でもformとのちがいはなんやねんてのはかいてなくて(たぶんみつけられなかっただけ)、appendixのfunctionsのリストにはquoteとかのってる。
260 = :
「関数をサブルーチンとして実装した」という記述を
「関数はサブルーチンだ」という主張だと読んだ愚者って話だろ
Emacs Lisp の primitive も symbol-function すりゃ #<subr >が返るし
これで終わっとけば Emacs Lisp との整合性も保ったままだったよな
なんでまた整合性が無くなりそうなEmacsに関係ない話を持ち出すかな
もう終わりでいいよ
261 = :
dired-do-shell-commandでshellコマンドのfor i in *; do $command ; doneをよくやる。
*はdiredでマークしたファイル
$commandはミニバッファで入力するコマンド
*の代わりに?を使わないのは?をスペースで囲まなければならず?/file1などができないから。
んでこれをいちいち入力するのが面倒くさくて↓みたいなマクロ組んだけど、
(local-set-key (kbd "C-!") (kbd "!for SPC i SPC in SPC * SPC ; SPC do SPC SPC done M-b C-b"))
実行するとミニバッファ入力ができず終了してしまう。
C-x ESC ESCでなにが起きたか確認すると↓のようにやはりミニバッファ入力が即座に終わっていただけなのが確認できた。
(dired-do-shell-command "for i in * ; do done" nil (quote ("for i in * ; do done")))
ミニバッファ入力を終了させないでおきたいけど方法が見つからない。
私がelispのフロー制御を分かってないのが悪いんですけどね。
どなたかヒントだけでも教えてもらえませんか?
262 = :
>>261
自力救済できたわ・・
(local-set-key (kbd "C-!")
(kbd "!for SPC i SPC in SPC * SPC ; SPC do SPC \"$i\" SPC ; SPC done C-u 11 C-b C-u C-x q RET"))
263 = :
解決したなら良かったけど
お手軽なのはキーボードマクロを試して、うまくいけば保存する方法
(emacs)Basic Keyboard Macro
(emacs)Save Keyboard Macro
264 = :
(emacs)Basic Keyboard Macro が Info のノードだとわかるだろうか
M-: (info "(emacs)Basic Keyboard Macro") ENTER
で見られるのはわかるだろうか
Info の Emacs の Keyboard Macros の……と説明しなくて大丈夫だろうか
と考えてしまう俺がいる
265 = :
丁寧に説明頂いてありがとうございます。
M-x eval-expressionがM-:なのは便利ですね知らなかった。
(emacs)Keyboard Macrosは一通り読みました。
ほぼ知ってたことを確認できたのでいい収穫でした。
ただ、(emacs)Executing Macros with Variationsのrecursive editがここまで柔軟にminibuffer利用マクロとかみ合うとは想像できなかった。
白状すると読み飛ばしていたんですねえ()
minibuffer入力中にmacro定義を終えてもマクロ実行直後にminibuffer入力中にならない、という仕様は本当に思いつかなかった。
なんでしょうね?elisp追ったり調べたりしてもさっぱりでした。
macro実行すべてに関わってそうなbuiltin functionのexecute-kbd-macroを見てもインタラクションに関する記述がない。
ないからこそ非インタラクテイブなんでしょうかね。
Cは追う気が起きなかった。
このもやもやが将来にぶつかる壁になりませんように。
266 = :
>>265
解決はしたけどecho areaが表示されなくて地味に・・・辛いです。
*Shell Command Output*バッファを伴う量のstdoutがあればecho areaが使われないので問題ないのですが、
for i in * ; do rm -v "$i"/810.txt ; done みたいな少量のstdoutしかない時がつらいってばよ。。。
270 = :
だめだemacsにはecho areaを再表示するとかないんですねー
elispハックでつくるれるけどなんか抵抗あるなあ
つーわけでこんなワークアラウンドで自力救済
(kbd)使うなってなwこまけえこたあいいんだよ
(add-hook 'dired-after-readin-hook
(lambda () (local-set-key (kbd "C-!")
'(lambda () (interactive)
(execute-kbd-macro (kbd "!for SPC i SPC in SPC * SPC ; SPC do SPC SPC \"$i\" SPC ; SPC done C-u 12 C-b C-u C-x q"))
(switch-to-buffer "*Shell Command Output*" nil (quote force-same-window))))))
(add-hook 'dired-after-readin-hook
(lambda () (local-set-key (kbd "C-&")
(kbd "&for SPC i SPC in SPC * SPC ; SPC do SPC SPC \"$i\" SPC ; SPC done C-u 12 C-b C-u C-x q"))))
272 = :
(display-buffer shell-command-buffer-name) されるのは出力が複数行の場合なので
done のあとに ; echo を置くってのはどう
"!for i in * ; do ; done; echo\C-u2\M-b\C-u3\C-b\C-u\C-xq"
273 = :
それな
バッファが表示されるように出力行数を増やせばいいだけだろうに
274 = :
複数行かは(名前忘れたけど)例のvariable値に依存するからやめときますわ
>>273よ、
要件とproscons無視していいだけだろうなんて想像で解決した気分になられても何も得しないんだけどなんでそれでいいと思えたのかな?
おまえからクソリプみたいに噛みついたんだからせめてこの質問には逃げずにちゃんと答えろよ
まあおまえが誹謗中傷しかできないレス乞食とかになりたいとしても止める義理もねえけど
275 = :
彼なら巣に帰ったよ
277 = :
生憎おまえみたいな狂犬にprosconsを丁寧に教えて議論してやるなんて一言も言っとらんよ。
まず前提として、emacsなんて改造前提のソフトでは人の数だけconfigがある。
ある改造があって、それにprosconsがあって、人によって採用不採用がある。
それすらわからない故に「だけ」などと漏らした無礼モンがおまえ。
結局質問への答えも出せなかったな。
瑣末主義や誹謗中傷がお好きならどうぞご自由に。
失望はせんがやっぱりそういう奴なのね。
278 = :
はいはい、自分は絶対な人なわけね
一昨日質問してからずっと無視されてた理由を考えてみるといいよ
昨日の3件のレスを後悔してる
俺以外の最初のレスに賛同しただけでからんでくるようなタイプだったとはな
世の中にはいろんな人がいるもんだ
279 = :
この人はなんで「だけ」を度重ねて誤用したがるの・・・
280 = :
誤用でなく実際「だけ」だからでは
むしろ「質問者」が過敏過ぎてヤバい
暴言ばかりで見るに耐えん
281 = :
どうでもいい
282 = :
嘘つきと喋る口を私は持っていない
283 = :
どうでもいい
284 = :
誰がどこででも自演できるからどうでもいいよ
285 = :
どうでもいい
286 = :
壊れたおもちゃみたいなおじさんが出てきた
287 = :
スペシャルフォームおじ -> Ahoo知恵遅れおじ -> 壊れたおもちゃおじ
次のイベはなにするよ?
288 = :
スクリプトで埋め立てて恥曝しの記録をかき消すとかかな
289 = :
おい、嵐方教えるなって
290 = :
ごめんごめん
でもどうせそんな勇気無いって
291 = :
次スレはワッチョイありでたてよう
292 = :
残念ながらこの板VIPQ設定されてないから無理だよ
運営が過疎板にコストのかかる対策をしてくれる可能性も低いだろうね
293 = :
聞くかどうかに関係なくコマンドは入れてたてよう
295 = :
次スレまで1年はかかりそうですね...
296 = :
イベを盛り上げて消費するしかないのか
297 = :
ローカルルールで自主的に付ける?
298 = :
次ちゃんと立ててくれるならもうスクリプトで潰してくれた方がマシなんじゃ
299 = :
次スレでコマンドが効く保証はないし結局ローカルルールでしょ
300 = :
定着するまで俺らが自治すればいい
みんなの評価 :
類似してるかもしれないスレッド
- Emacs Part 54 (97) - [92%] - 2023/1/25 17:15
- Emacs Part 51 (1005) - [92%] - 2020/3/26 18:30
- Emacs Part 50 (978) - [92%] - 2017/12/29 18:45
- Emacs Part 32 (1001) - [92%] - 2009/12/20 2:04 ○
- Emacs Part 42 (1001) - [92%] - 2013/6/9 5:15 △
- Emacs Part 53 (989) - [92%] - 2022/12/5 12:45
- Emacs Part 41 (1001) - [84%] - 2012/12/24 4:15
- Emacs part 22 (1001) - [84%] - 2008/1/18 7:47 ○
- Emacs Part 31 (1001) - [84%] - 2009/10/23 10:31 ○
- Emacs Part 33 (1001) - [84%] - 2010/3/9 20:01 ○
- Emacs Part 34 (1001) - [84%] - 2010/6/21 19:45 ○
- Emacs Part 35 (1001) - [84%] - 2010/9/19 17:01
- Emacs Part 36 (1001) - [84%] - 2011/3/1 5:02
- Emacs Part 37 (1001) - [84%] - 2011/6/20 19:47
トップメニューへ / →のくす牧場書庫について