私はemacsで新しくなっています。私はemacsのチュートリアルをc/C++のideとして使っていますが、完全には機能しないいくつかのステップがあります:auto c-headersのための完全な - 。emacs auto-complete-c-headersクローズフック
C/C++ヘッダー用にyasnippetとauto-completeをインストールしました。
私は#include <ctype.h>
コールだけisdig
ないisdigit
として 、クロージングフックは私がh
その他、#include <float
にタブを入力した場合でも、.h>
で完了していない追加されていない#include <stdio.h
ため、通常のオートコンプリートの動作を取得しますが、>
私は欲しいです
; start package.el with emacs
(require 'package)
;add MELPA to repository list
(add-to-list 'package-archives '("melpa" . "http://melpa.org/packages/"))
;initialize package.el
(package-initialize)
;start auto-complete with emacs
(require 'auto-complete)
;do default config for auto-complete
(require 'auto-complete-config)
(ac-config-default)
;start yasineppet with emacs
(require 'yasnippet)
(yas-global-mode 1)
;let's define a function which initializes auto-complete-c-headers and gets called for c/c++ headers hooks
(defun my:ac-c-header-init()
(require 'auto-complete-c-headers)
(add-to-list 'ac-sources 'ac-source-c-headers)
(add-to-list 'achead:include-directories '"/usr/include/c++/5
/usr/include/x86_64-linux-gnu/c++/5
/usr/include/c++/5/backward
/usr/lib/gcc/x86_64-linux-gnu/5/include
/usr/local/include
/usr/lib/gcc/x86_64-linux-gnu/5/include-fixed
/usr/include/x86_64-linux-gnu
/usr/include")
)
;now let's call this function from c/c++ hooks
(add-hook 'c++-mode-hook 'my:ac-c-header-init)
(add-hook 'c-mode-hook 'my:ac-c-header-init)
何かが欠けていますか?
ヘッダのパスがgcc -xc++ -E -v -
ignoring duplicate directory "/usr/include/x86_64-linux-gnu/c++/5"
ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"
ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/5/../../../../x86_64-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
/usr/include/c++/5
/usr/include/x86_64-linux-gnu/c++/5
/usr/include/c++/5/backward
/usr/lib/gcc/x86_64-linux-gnu/5/include
/usr/local/include
/usr/lib/gcc/x86_64-linux-gnu/5/include-fixed
/usr/include/x86_64-linux-gnu
/usr/include
から来て、私はCの設定についてはよく分からないおかげ