2

私はemacsオートコンプリートプラグインを使用しています。実際には、オートコンプリートを使用するEmacs Live(https://github.com/overtone/emacs-live)を使用しています。オートコンプリートは機能しますが、/ dict/xxxファイルのキーワードリストしか認識しません。leinを使用して現在のプロジェクトにライブラリを追加すると(たとえば、ring、compojure)、まったく機能しません。オートコンプリートにそれらを認識させるために、libs to / dictディレクトリ内のすべてのキーワードをリストする必要がありますか?または、leinを使用して新しいライブラリを追加するたびにオートコンプリートにキーワードを通知する方法はありますか(Java IDEで発生するのと同じように)?

4

2 に答える 2

1

Emacs liveはまだSwankを使ってClojureと話しますよね?Javaライブラリのオートコンプリートを提供するSwankの代わりにnreplを使用してみることができます。

オートコンプリートにソースを追加するのは少し複雑です。ac-sources補完ソースを追加するためにカスタマイズするものと呼ばれる変数があります。組み込みのものに関する情報はここにあります。

これが私のinit.elにあるものです:

(set-default 'ac-sources
             '(ac-source-abbrev
               ac-source-dictionary
               ac-source-yasnippet
               ac-source-words-in-buffer
               ac-source-words-in-same-mode-buffers
               ac-source-semantic))

これにより、オートコンプリートが少し便利になります。

于 2013-02-06T11:16:50.877 に答える
1

クリスバレットの答えはあなたをほとんどそこに連れて行きます。

melpaからnreplとac-nreplをインストールし、これをinitに配置します。

(require 'nrepl)
(require 'ac-nrepl)

(add-hook 'nrepl-mode-hook 'ac-nrepl-setup)
(add-hook 'nrepl-interaction-mode-hook 'ac-nrepl-setup)
(eval-after-load "auto-complete"
  '(add-to-list 'ac-modes 'nrepl-mode))

そしてM-x nrepl-jack-in、オートコンプリートとドキュメントのヒントを使用して、emacsセッションをclojureプロジェクトにフックするために使用します。

于 2013-02-06T20:07:50.900 に答える