■ このスレッドは過去ログ倉庫に格納されています
Emacs Part 52
- 261 :名無しさん@お腹いっぱい。:2020/09/03(木) 21:42:39.64 .net
- 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のフロー制御を分かってないのが悪いんですけどね。
どなたかヒントだけでも教えてもらえませんか?
総レス数 1004
219 KB
新着レスの表示
掲示板に戻る
全部
前100
次100
最新50
read.cgi ver.24052200