2

Emacs irb (inferior-ruby-mode)でオートコンプリートを設定しているときに、ACソースとしてRubyモードのバッファーのみを追加できないという問題が発生しました。私は例えばすることができます。によって現在のディレクトリにファイルを追加します

(setq ac-sources '(ac-source-files-in-current-dir))

または、(最終的に使用した)すべてのバッファーを追加できます。

(setq ac-sources '(ac-source-words-in-all-buffer))

しかし、私が本当に望んでいるのは、Rubyモードのバッファーのみを追加することです。^^

4

1 に答える 1

3

次のようになりac-source-words-in-same-mode-buffersます。このアプローチを再利用して、独自の補完ソースを作成できます。次に例を示します。

 (ac-define-source words-in-ruby-buffers
   '((init . ac-update-word-index)
     (candidates . (ac-word-candidates
                     (lambda (buffer)
                       (eq (buffer-local-value 'major-mode buffer) 'ruby-mode))))))

ac-source-words-in-ruby-buffers完了ソースを提供します。

PS私はそれをテストしていませんでしたが、動作するはずです;-)

于 2012-11-20T14:25:40.103 に答える