2014-01-09 83 views
2

目前,C-模式下,如果我開始輸入一個字,如:在emacs中,make dabbrev-expand只做部分完成,比如minibuffer-expand?

namespace_module_ 

dabbrev擴張將循環通過這個標識符的萬點完整的完成......

namespace_module_typea_foo <TAB> 
namespace_module_typea_bar <TAB> 
namespace_module_typea_goo_start <TAB> 
... 

與許多可能的話,通過所有這些來瀏覽是很繁瑣的。但是,小型緩衝器的完成似乎有所不同。它只會完成,直到可能的匹配之間的第一個區別。這本來完成(假定有喜歡的東西typeb_沒有其他的比賽,等):

namespace_module_typea_ 

在這一點上,我只需要輸入一個字符以消除不確定性,這極有可能是自動完成的未來猜測會是正確的。是否有可能在dabbrev-expand中使用這種完成模式in-buffer?或嬉皮擴展?甚至冰柱?我一直無法找到任何東西。

回答

1

您是否試過dabbrev-completion(默認綁定爲C-M-/)?它應該只是做你正在問的東西。

+0

我相信默認綁定實際上是'C-M- /'。 – Chris

+0

杜赫,的確,感謝您的警惕,我相應地解決了我的問題。 – Stefan

0

是,icicle-dabbrev-completion,默認情況下,勢必C-M-/(更換dabbrev-completion)給你什麼dabbrev-completion給你,但Icicles完成的功能,每當有一個以上的完成。 IOW,你可以使用子字符串,正則表達式等匹配;你可以使用漸進式完成;你可以排序和循環候選人;等等。

看到相關文檔,here