[英]Unable to search effectively in Emacs
我希望在Emacs中有類似的工具,如Vim中的以下內容
:g/search/
獲得匹配列表。
如何在Emacs中獲得匹配列表?
Mx occur
嗎?
從手冊 :
Mx occur
提示正則表達式,並顯示一個列表,顯示緩沖區中包含匹配項的每一行。 匹配的文本使用
match
面突出顯示。 要將搜索限制為部分緩沖區,請縮小到該部分(請參閱縮小)。 數字參數n
指定在每個匹配行之前和之后顯示n
行上下文。 上下文行的默認數量由變量list-matching-lines-default-context-lines
。在
*Occur*
緩沖區中,您可以單擊每個條目,或在那里移動點並鍵入RET
,以訪問已搜索的緩沖區中的相應位置。o
和Co
在另一個窗口中顯示匹配;Co
沒有選擇它。 或者,您可以使用Cx `
(next-error
)命令逐個訪問事件(請參閱編譯模式)。在
*Occur*
緩沖區中鍵入e
切換到Occur Edit模式,其中對條目所做的編輯也應用於原始緩沖區中的文本。 鍵入Cc Cc
以返回Occur模式。命令
Mx list-matching-lines
是Mx occur
的同義詞。
除了Mx occurr
還檢查Mx grep。 這可以同時在多個文件中使用。
我通常的工作流程不是獲取列表並選擇(不知道如何操作),而是使用增量搜索:
C-s <search target>
在點之后獲得第一場比賽。 如果你不喜歡它,另一個Cs
會得到下一個。 繼續,直到你感到高興(你需要一個額外的Cs
來包圍緩沖區)。 足夠新的emacsen還可以突出顯示所有可見的匹配。
正如isearch-forward
的評論中所指出的,這是isearch-forward
的典型鍵綁定。 如果綁定不同,則需要修改指定的過程。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.