因此,在記事本++中,我可以選擇文本,點擊C-f,然後,如果我需要在所有打開的文件中查找選擇的出現次數,我打開M-o並獲得很好的可點擊列表並導航到出現選項。或者,如果我只需要列出當前文件的列表,我將鼠標指向「查找當前文檔中的所有內容」按鈕,只需點擊一下鼠標,即可獲得與當前活動文件相同的很好的可點擊列表。那麼是否有可能在emac中做到確切的事情?搜索所選文本並在emacs的當前(所有其他緩衝區)中顯示它的全部出現?
回答
您可以用下面的Lisp函數實現該功能:
(defun occur-selection()
(interactive)
(when (region-active-p)
(let (deactivate-mark)
(occur (regexp-quote (buffer-substring (region-beginning) (region-end)))))))
如果你把這些代碼在你的~/.emacs
文件連同follwing線:
(global-set-key [(meta o)] 'occur-selection)
,你應該能夠ŧ o選擇一些文本,點擊M-o並獲得在單獨的緩衝區中顯示的所選文本的所有出現的列表。
用戶M-克正和M-克對通過在原來的緩存器中的匹配線做循環。
但是,請注意,單行中的多次出現沒有區分。
默認情況下,Emacs有M-x出現,它們的工作方式相似但略有不同。它允許您指定正則表達式,當前緩衝區中的所有匹配項將顯示並超鏈接。
如果您的重點更多的是導航而不是突出顯示搜索字詞的所有匹配項,那麼可能有一個外部替代方案可以幫助您。
Emacs的原創理念並不是圍繞用戶界面隱喻建立的,例如用鼠標點擊,它僅來自鍵盤背景。如果您對這種方法感興趣,您可能需要查看Emacs的Avy軟件包。它可以讓你快速跳到多次出現的單詞之一。
檢查出優秀的Emacs岩石情節在行動「跳來跳去」,看看阿維的前體(被稱爲王牌跳模式):http://emacsrocks.com/e10.html
您可以使用「發生」進行導航。使用'next-error'和'previous-error';通過'C-h w'找到他們綁定的鍵。 – jpkotta
它允許你指定一個正則表達式 – someNameJustToAnswer
它允許你指定一個正則表達式 ------------------------------- ------------------ 這一點不是鍵入整個事物,而是選擇和搜索。如果選擇例如*的東西,它會混亂整個事情,你必須\它。壞。實際上,在emacs中,我喜歡增量替換和命名書籤的能力(它更好的是記事本++中的f2書籤),但是這種手指的靈活性需要我很少困惑。 – someNameJustToAnswer
- 1. Emacs搜索並打開多個文件並在所有緩衝區中搜索
- 2. 如何在Emacs緩衝區中突出顯示所有出現的單詞?
- 3. 輸出所有當前緩衝區
- 4. 所有emacs緩衝區中的行號
- 5. 顯示Emacs中所有打開的緩衝區
- 6. XEmacs緩衝區選項卡不顯示所有緩衝區
- 7. 在最近Emacs的其他窗口中顯示緩衝區
- 8. 將emacs搜索擴展到其他緩衝區
- 9. 獲取所有Emacs緩衝區列表
- 10. 顯示所選的單選按鈕並隱藏所有其他
- 11. Emacs:用正則表達式搜索緩衝區並在新緩衝區中顯示結果?
- 12. Emacs的搜索所有緩衝非交互
- 13. 當前緩衝區的顯示號碼
- 14. 如何在Emacs中保存所有文件(或保存所有緩衝區)?
- 15. 在Emacs緩衝區中居中文本
- 16. 讓emacs grep緩衝區使用特定的emacs緩衝區來顯示命中
- 17. Emacs的:從緩衝區的begining我搜索開始搜索
- 18. 碳Emacs的:沒有'焦點在小緩衝區增量搜索
- 19. 列出當前顯示的所有JPopupMenu
- 20. UISearchBar - 當沒有搜索文本時顯示所有行
- 21. 重命名當前緩衝區和Emacs中的相關文件
- 22. 將函數應用於emacs中的所有緩衝區
- 23. 搜索並突出顯示在UIView中呈現的PDF文本
- 24. 如何獲取emacs中當前widget-minor-mode緩衝區中所有小部件的值?
- 25. Emacs在所有緩衝區中截斷行
- 26. 「顯示所有除」 MySQL中的布爾全文搜索
- 27. 顯示協議緩衝區消息中的所有元素
- 28. C#巢ElasticSearch搜索,並突出顯示在所有類型的
- 29. vim - 如何關閉當前選項卡中的所有緩衝區?
- 30. 顯示當前圖層並隱藏Adobe Fireworks中的所有其他圖層
這是我需要的。謝謝! – someNameJustToAnswer