问两个关于company-mode的问题

Vim、Emacs配置和使用
回复
永恒の星空
帖子: 5
注册时间: 2009-05-02 17:59

问两个关于company-mode的问题

#1

帖子 永恒の星空 » 2009-05-02 18:02

company-mode昨天配置好了,用着挺顺手的,但是有两个小问题

一个是自动补全的时候,放在哪一个函数上面,出补全信心的时候都会自动开一个新的Buffer。虽然不影响使用,但是看着上面tab一排的不舒服

还有一个是,将光标放在函数上两秒左右,会自动在minibuffer出现补完提示,但是每次都要等2秒有点麻烦。能不能通过修改配置,让他每次都马上显示呢?

谢谢~
头像
zhan
帖子: 1880
注册时间: 2005-08-15 0:04
来自: 南7技校

Re: 问两个关于company-mode的问题

#2

帖子 zhan » 2009-05-03 16:20

新 buffer? 没见过。贴个图看看。
下面一个问题我觉得这个是 semantic 的一个设置,
试试这个
(setq semantic-idle-scheduler-idle-time x)
x 设置成一个你喜欢的时间,秒为单位
飞得高,飞得低,学习再学习,多少大秘密!
http://zhan.blog.ubuntu.org.cn
永恒の星空
帖子: 5
注册时间: 2009-05-02 17:59

Re: 问两个关于company-mode的问题

#3

帖子 永恒の星空 » 2009-05-04 0:07

函数查看问题解决了~感谢楼上同学~
直接设置成0编辑会很卡,改成1就都好了~(虽然本来想的就是要0的效果)

用Company在补完之前,没有多余的Buffer,但是一点补完之后,就自动多出了相应的头文件的Buffer。。。
而且是查看哪个多出哪个。遍历一次过去要多出三五个Buffer出来。
后端搜索用的是Semantic。
但是直接用semantic-complete-analyze-inline和semantic-ia-complete-symbol-menu以及semantic-ia-complete-symbol都没有问题

怀疑是Company设置哪里出错了。。。

设置只有这么几行。

代码: 全选

(add-to-list 'load-path
             (expand-file-name "h:/emacs/site-lisp/company/"))
(require 'company) 
(add-hook 'c-mode-common-hook 'company-mode) 
(global-set-key "\M-n" 'company-select-next) 
(global-set-key "\M-p" 'company-select-previous) 
(setq company-idle-delay nil) 
(setq company-complete-on-idle-min-chars 100) 
(setq company-tooltip-delay nil) 
(setq company-complete-on-edit nil)
再加问一点儿
在网上找资料时候,看到一些关于company-expand-common的讨论

但是我在官网下载的company-mode (0.4.2)版,并没有company-mode.el这个文件只有company.el,不能
(require 'company-mode) 只能(require 'company)。但是效果是和大家的说法是一样的。。。
还有和semction怎么和company结合在一起呢。需要另外写些什么配置么,还是自动会调用的?
现在虽然似乎能实现挂接在一起的功能,但是不知道还有没有啥隐患。。。

问题多了点儿不好意思@__@
附件
before.jpg
before.jpg (11.09 KiB) 查看 1201 次
after.jpg
after.jpg (15.19 KiB) 查看 1200 次
anewbie
帖子: 159
注册时间: 2009-02-24 19:39

Re: 问两个关于company-mode的问题

#4

帖子 anewbie » 2009-05-14 20:27

第一个问题是 semantic 造成的,加载头文件对 semantic 而言是必要的。
所以,解决办法就是将系统头文件 buffer 从 tabbar 里过滤掉。重定义 tabbar-buffer-groups-function.
ibuffer 之类的应该都提供了类似的过滤机制。
眼不见心不烦。
最新的 semantic 可以用 cscope 之类的作后端,估计可以彻底解决问题,但我没试过,懒得折腾。
永恒の星空
帖子: 5
注册时间: 2009-05-02 17:59

Re: 问两个关于company-mode的问题

#5

帖子 永恒の星空 » 2009-05-19 0:08

:em06 非常感谢楼上同学的帮忙……其实我还是EMACS新手……
现在就是通过设置tabbar 达到效果的。。。。

只是不太明白为什么用semantic 本身做前端的时候没有出现那个Buffer。用了company就出现了@__@

啊……其实怎么设置前端后端的还不是很明白,设置很多都是Google回来的,功能是实现了原理一点都不理解……
回复