首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >管理emacs中的数千个缓冲区

管理emacs中的数千个缓冲区
EN

Stack Overflow用户
提问于 2013-11-05 23:52:59
回答 5查看 914关注 0票数 3

我在一个有一万多个文件的项目上。我希望能够轻松地浏览这些文件。

iswitchb模式在这么多文件中陷入了非常严重的困境;icicles的速度更快,但我喜欢iswitchb的UI。

有什么建议吗?

Stefan请求在iswitchb-mode执行中运行分析器:

代码语言:javascript
复制
- call-interactively                                             2740  79%
  - iswitchb-buffer                                              2628  76%
    - iswitchb                                                   2628  76%
      - iswitchb-read-buffer                                     2628  76%
        - completing-read                                        2599  75%
          - completing-read-default                              2596  75%
            - read-from-minibuffer                               2596  75%
              - iswitchb-post-command                            1034  30%
                - iswitchb-exhibit                               1034  30%
                  - iswitchb-set-common-completion                947  27%
                    - iswitchb-find-common-substri                925  26%
                      - mapcar                                    925  26%
                        - iswitchb-word-matching-s                922  26%
                          + iswitchb-case                          10   0%
                            string-match                            1   0%
                  + iswitchb-set-matches                           63   1%
                  + iswitchb-completions                           24   0%
              + redisplay_internal (C function)                   869  25%
              - timer-event-handler                               499  14%
                - byte-code                                       499  14%
                  - apply                                         499  14%
                    - jit-lock-context-fontify                    491  14%
                      + buffer-list                                15   0%
                    + show-paren-function                           6   0%
                    + display-time-event-handler                    2   0%
              + call-interactively                                 34   0%
              + icicle-unhighlight-lighter                          3   0%
              + iswitchb-pre-command                                1   0%
        + iswitchb-make-buflist                                    15   0%
EN

回答 5

Stack Overflow用户

发布于 2013-11-06 00:23:40

如果您想使用冰柱,但希望交互行为更类似于iswitchb,那么您可以尝试几个自定义,这取决于您喜欢的iswitchb交互的哪个部分。请参阅冰柱文档:冰柱- Ido和IswitchB的本节。

使用大量文件的Wrt :请记住,您也可以使用项目冰柱 --一组与您一起使用的相关文件来定义Wrt。与、etags、和其他方法一样,这也是预先筛选可能的文件名候选人的一种方法。

票数 3
EN

Stack Overflow用户

发布于 2013-11-06 19:13:31

刚刚在一个有10000个缓冲器的会议上尝试了iswitchb,我发现这确实是非常慢的。

我建议您尝试M-x icomplete-mode:在Emacs-24.3中,默认的C-x b完成已经接受子字符串匹配,就像iswitchb一样,所以唯一缺少的特性是icomplete-mode提供的特性,但是icomplete-mode在我的会话中仍然非常快,有10000个缓冲区。基本上,从Emacs-24.3开始,iswitchb就被icomplete-mode淘汰了。

票数 3
EN

Stack Overflow用户

发布于 2013-11-06 02:31:26

你试过这个吗?

代码语言:javascript
复制
iswitchb-max-to-show is a variable defined in `iswitchb.el'.
Its value is nil

Documentation:
If non-nil, limit the number of names shown in the minibuffer.
If this value is N, and N is greater than the number of matching
buffers, the first N/2 and the last N/2 matching buffers are
shown.  This can greatly speed up iswitchb if you have a
multitude of buffers open.

You can customize this variable.
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19801456

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档