2012-04-17 49 views
4

模式是在这里:http://emacswiki.org/emacs/AutoComplete如何使光光标自动完成在emacsClient

,并在底部:

我有一个黑色的背景,当我使用自动完成,只要我 键入我的光标变成黑色,所以现在我看不到它。帮帮我! 我要如何解决这个问题?

好的,不要着急,修复它。在加载自动完成软件包后,刚添加(set-cursor-color“white”)到我的 .emacs文件中。

所以我也是这样做的。甚至(set-cursor-color“#ffffff”),但它不能帮助我。我怎么解决这个问题?

更正:它的工作原理为Emacs但emacsclient

也许我一定要添加一些钩子不工作?但我需要做一个适当的钩然后,不要添加我所有的混乱,我试图解决麻烦设置一切前景浅色背景黑暗...

也这里是题外话题:为什么大多数专业的emacs用户使用灯光主题?

配置:

(require 'auto-complete-config) 
(ac-config-default) 
(set-face-background 'ac-completion-face "darkgray") 
(set-face-underline 'ac-completion-face "lightgray") 
(set-face-background 'ac-yasnippet-candidate-face "black") 
(set-face-underline 'ac-yasnippet-candidate-face "sandybrown") 
(set-face-background 'ac-candidate-face "darkgray") 
(set-face-underline 'ac-candidate-face "lightgray") 
(set-face-background 'ac-selection-face "steelblue") 
(set-cursor-color "#ffffff") 

(provide 'auto-complete-settings) 

答案征求意见:

(frame-parameter (selected-frame) 'cursor-color) 
"black" 

- 前自动完成(当光标光),当光标熄灭后。

+1

自1999年以来一直在使用Emacs,具有黑暗的背景和光线前景。 – 2012-04-17 11:39:00

+0

你使用什么主题? – 2012-04-23 23:28:30

+0

我不使用主题,这里是颜色设置:https://github.com/NeNSha/Aishite/blob/master/site-lisp/init。el – Cynede 2012-04-24 03:42:48

回答

1

这里是什么对我的作品:

(defun frame-bg (frame) 
    "Custom behaviours for new frames." 
    (with-selected-frame frame 
    (set-cursor-color "#ffffff") 
    )) 
(frame-bg (selected-frame)) 
(add-hook 'after-make-frame-functions 'frame-bg) 
+1

我想你应该只是将这些设置添加到'default-frame-alist'。目前它可能只在'initial-frame-alist'中设置。 – 2012-04-24 09:26:24

+0

这是在你发布的早期问题中解决 - http://stackoverflow.com/questions/9271930/how-to-set-emacsclient-background-as-emacs-background – 2012-04-24 09:28:05

+0

是的,你是对的。 – Cynede 2012-04-24 09:33:56

3

自动完成使用的三个面是ac-candidate-face,ac-completion-faceac-selection-face。定制他们应该照顾你的问题。

+0

它的工作原理是一次。但是当我运行emacsclient时会遇到麻烦 – Cynede 2012-04-17 11:46:56

+0

您的emacsclient是否打开了一个新框架? – 2012-04-17 11:47:42

+1

是的,我做别名ec ='emacsclient -c -a“”' – Cynede 2012-04-17 11:49:14

1

我没有使用自动完成功能,但是我无法重现默认面部的这种行为。

在23.1.1中,我可以使用您指定的相同函数设置default face的背景颜色,并将其应用于所有后续帧(包括emacsclients中的那些帧)的默认值。

你确定你是肯定是与你的更改所服务的服务器交谈?

+0

我认为问题在于我的参数已启用(以某种方式)仅用于服务器,并且它们不启用emacslient。进行更改时重新启动服务器。 – Cynede 2012-04-24 09:00:25

+0

作为一个完整的检查,你能否确认在你停止服务器之后,你不能运行emacsclient? (显然省略了这个测试的'-a'参数)。 – phils 2012-04-24 10:02:58

+0

我无法在没有服务器的情况下运行emacs客户端,当然 – Cynede 2012-04-24 10:11:14

0

我同意,希瑟的回答会的工作,但我发现,所有我需要解决这个问题是把下列我的.emacs文件(启用后自动完成模式):

(set-cursor-color “white”)