2012-05-14 62 views
3

我想對某些Prolog代碼做一些調試,並且我有幾個調用方法。動態全局替換行號,emacs

是否有可能做的Emacs內的全局替換,這樣我可以創建一個將取代在程序中的當前行寫語句?

從本質上講,假設一個方法調用X和一個寫語句寫(某些字符串),我可以取代

X的所有實例,

X,寫(行號),其中通過一些emacs的獲得行號撥打

請讓我知道,如果我不是事先明確和感謝。

回答

4

This page 有類似的例子。

從它,我想下面的命令

M-x replace-regexp 
Replace regexp: \(word_to_replace\) 
Replace regexp with: \1, write(\,(line-number-at-pos) 

replace-regexp可以重手,所以你必須要小心 您使用該模式的正則表達式。如果沒有太多匹配,M-x query-replace-regexp可能 也是有用的。

+1

即使有很多比賽,'查詢替換-regexp'通常只是罰款('!'將全部更換)。注意現在運行'query-replace-regexp'的首選方法是以'C-s'(或'C-u C-s')開始,然後逐漸輸入搜索關鍵字,然後點擊'M-%'。 – Stefan

0

我想你應該寫一個腳本來做到這一點。