簡體   English   中英

Emacs auto-complete-c-headers不能使用引號

[英]Emacs auto-complete-c-headers won't work with quotation marks

我在用:

  • Linux Manjaro
  • GNU Emacs 24.3.1,Manjaro中更新的標准Emacs軟件包。
  • Emacs打包了來自Melpa的自動完成自動完成c頭

我的.emacs文件的相關部分如下(我的.emacs文件中現在幾乎沒有其他內容,在調查此問題時,我嘗試將其減少到最低限度)。

;; Auto-complete
(add-hook 'after-init-hook
      (lambda()
        (ac-config-default)))

;; Auto-complete C/C++ header file names
(add-hook 'c-mode-common-hook
      (lambda()
  (require 'auto-complete-c-headers)
  (add-to-list 'ac-sources 'ac-source-c-headers)
  (add-to-list 'achead:include-directories '"/usr/include/c++/4.9.1")
  (add-to-list 'achead:include-directories '"/usr/include/c++/4.9.1/x86_64-unknown-linux-gnu")
  (add-to-list 'achead:include-directories '"/usr/include/c++/4.9.1/backward")
  (add-to-list 'achead:include-directories '"/usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.1/include")
  (add-to-list 'achead:include-directories '"/usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.1/include-fixed")))

自動完成功能非常適合:

#include <iost...

但不適用於:

#include "MyCla...

但是它適用於:

#include <MyCla...

盡管MyClass.hpp不是系統包含文件(位於./下,這是自動完成c標頭的標准搜索路徑)。 但是然后我必須編輯括號並將其更改為引號。

看一下auto-complete-c-header的代碼,對我來說,引號大小寫應該起作用。

關於可能導致此問題的任何想法嗎?

我認為也許Emacs在

#include "

這會阻止它從auto-complete-c-headers中獲取建議。

我對自己作為程序員的最新Emacs經驗感到非常滿意,對於如何解決這種小麻煩,我將不勝感激。

我遇到相同的問題,作為不完善的解決方案,可以使用:

(setq ac-disable-faces nil)

這將啟用自動在引號之間進行補全。 如果那行不通,請嘗試將其與自動配對電對模式結合使用

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM