emacsのすべてのバッファを "M-x replace-string"するにはどうすればいいですか?emacsのすべてのバッファを "M-x replace-string"するにはどうすればいいですか?
20
A
答えて
19
のMxibuffer
RETトンU
しかし、あなたはおそらく、それは交換を行うことができない場合には中止しますので、もう少しそれよりも限定的になりたいでしょう - 例えば一致するファイル名を含む読み取り専用のdiredバッファを検出します。
Chの ibuffer内メートルモードのヘルプを読んで、簡単にあなたが興味を持っているだけのバッファをマークする方法については、
編集:ibuffer-do-replace-regexp
の非正規表現版ができやすいです
;; defines ibuffer-do-replace-string
(define-ibuffer-op replace-string (from-str to-str)
"Perform a `replace-string' in marked buffers."
(:interactive
(let* ((from-str (read-from-minibuffer "Replace string: "))
(to-str (read-from-minibuffer (concat "Replace " from-str
" with: "))))
(list from-str to-str))
:opstring "replaced in"
:complex t
:modifier-p :maybe)
(save-window-excursion
(switch-to-buffer buf)
(save-excursion
(goto-char (point-min))
(let ((case-fold-search ibuffer-case-fold-search))
(while (search-forward from-str nil t)
(replace-match to-str nil t))))
t))
3
さまざまな選択肢がありますが、それはどのようにしたいのかによって異なります。
SearchBuffersのEmacs Wikiをチェックしてください。興味深いのは、モチュール編集と氷色です。
2
Treyがこの点に関してIcicles buffer searchingを言及してくれたことに感謝します。
また、私は、DiredのQ(dired-do-query-replace
)も言及しましょう。とても便利な。そして、あなたは簡単にこのようなキーを使用してのdiredでのファイルのセットをマークすることがあるので注意してください(ともっとあります):
- %メートル(
dired-mark-files-regexp
) - 名前が正規表現に一致するマークファイル - %g(
dired-mark-files-containing-regexp
) - テキスト(コンテンツ)が正規表現と一致するファイルをマークします - *。(
dired-mark-extension
) - 名前が同じ拡張子を持つマークファイル(例えば、.el
)
は、標準ライブラリdired-x.el
(そしておそらくdired-aux.el
)をロードしてください。
1
私はこのウェブサイトを長い時間前に見つけました。申し訳ありませんが、私はソースを覚えていません。 読み取り専用バッファが見つかった場合は停止しますので注意してください。
ちょうどあなたの.emacsに
(defun query-replace-in-open-buffers (arg1 arg2)
"query-replace in open files"
(interactive "sQuery Replace in open Buffers: \nsquery with: ")
(mapcar
(lambda (x)
(find-file x)
(save-excursion
(beginning-of-buffer)
(query-replace arg1 arg2)))
(delq
nil
(mapcar
(lambda (x)
(buffer-file-name x))
(buffer-list)))))
関連する問題
- 1. Emacsにすべてのファイルを保存する(またはすべてのバッファを保存する)にはどうすればいいですか?
- 2. 任意のEmacsバッファを "隠し"にするにはどうすればいいですか?
- 3. EmacsでどのOSを実行しているかを知るにはどうすればいいですか?
- 4. 3行がemacsで半前書き的に並べ替えるにはどうすればよいですか?
- 5. EmacsでDoctorJSを使用するにはどうすればいいですか?
- 6. vim/emacsのJava + jdb + maven:どうすればいいですか?
- 7. スペースでemacs diffを使うにはどうすればいいですか?
- 8. emacsのすべてのバッファに関数を適用する
- 9. Emacs内で開いているファイルのリストを見るにはどうすればいいですか?あるいは、Emacs内のディレクトリをブラウズしますか?
- 10. Emacsはすべてのバッファの行を切り捨てます。
- 11. actionscriptを使ってspark/mxコンポーネントのレイアウトを操作するにはどうすればよいですか?
- 12. 循環バッファはスレッドセーフですか?もしそうでなければ、どうすればいいのですか?
- 13. Linuxでは、ドメインのMXレコードを偽装するにはどうすればよいですか?
- 14. Windows Emacs Trampをリセットするにはどうすればよいですか?
- 15. EmacsのECBでキーボードを使ってブラウザウィンドウに切り替えるにはどうすればいいですか?
- 16. C++のソケット用に入力バッファとしてvectorを使うにはどうすればいいですか?
- 17. Emacs Lispバッファのフォーカスが外れていますか?
- 18. AWS SESのMXレコードを追加するにはどうすればよいですか?
- 19. WindowsのEmacsでは、EmacsがWindowsのキーを完全に無視できるようにするにはどうすればいいですか?
- 20. vimのバッファがvimのpython apiにリストされているか、またはリストから外されているかどうかを調べるにはどうすればよいですか?私はまだ記載されているすべてのvimのバッファを把握する必要があるツールの
- 21. アクティブなEmacsバッファ内のすべてのdoxygenコメントを隠す
- 22. emacsからunixサーバーに自分のコードを取得するにはどうすればいいですか?
- 23. emacsでipythonバッファをクリアするには?
- 24. パイプEmacsは例えば新しいバッファ
- 25. Emacsで特定のものを色付けするにはどうすればいいですか?
- 26. emacsで私のFortranコードのフォント色を変更するにはどうすればいいですか?
- 27. コンポーネントがどのパネルに属しているかを調べるにはどうすればいいですか?
- 28. msiがタイムスタンプされているかどうかを調べるにはどうすればよいですか?
- 29. emacsがコンパイルバッファに従うようにするにはどうすればいいですか
- 30. ディレクトリ内のすべてのスクリプトの種類を調べるにはどうすればいいですか?
おかげでこれを置くが、これは、文字列を置き換えることが完全に等しいようではありません。 r-sは\文字通り、Uを正規表現構文として読み込みます。 –
非常に真実です、それはregexp replace関数です。文字列バリアントが組み込まれていないので、正規表現を扱う必要があります。そうでなければ、類似の関数を定義することができます。私は答えに1つ追加します。 – phils
また、 'M-x ibuffer RET t Q'は対話的に同じことを行い、それぞれの置換を確認する機会を与えます。 –