4

Emacs で AutoComplete を使用して Ropemacs を使用しようとしていますが、デバッガー エラーが発生し続けます。

Debugger entered--Lisp error: (void-function rope-completions)
  (rope-completions)
  eval((rope-completions))
  eval-last-sexp-1(nil)
  eval-last-sexp(nil)
  call-interactively(eval-last-sexp nil nil)

このシンボルrope-completionsには、Ch S からのドキュメントはありません。auto-complete-config で一度だけ表示されます。私は最新のropemacs、ropemode、pymacs、python-ropeをダウンロードしましたが、おそらく私が持っていた適切なシステムの一貫性を失いました。

この関数を構成ファイルから削除すると、オートコンプリートが完了しようとするとカーソルが赤くなります。システムのどこにもこの関数への参照が見つかりません。

オートコンプリートは、Lisp で完璧に機能しています。オートコンプリートと Rope を連携させて、Emacs で Python のオートコンプリートを提供するにはどうすればよいですか?

編集: Ch f からロープ補完の定義を確認できません。これが私の Pymacs バッファの出力です。

<23 (version "0.24-beta2")
>45 eval pymacs_load_helper("ropemacs", "rope-")
<278    (return '(progn (pymacs-defuns '(0 rope--OldProgress nil 1 rope--LispProgress nil 2 rope-LispUtils nil 3 rope-message nil 4 rope--lisp-name nil 5 rope--load-ropemacs nil 6 rope--started-from-pymacs nil 7 rope-occurrences-goto "" 8 rope-occurrences-next "")) (pymacs-python 9)))
>45 eval pymacs_load_helper("ropemacs", "rope-")
<288    (return '(progn (pymacs-defuns '(10 rope--OldProgress nil 11 rope--LispProgress nil 12 rope-LispUtils nil 13 rope-message nil 14 rope--lisp-name nil 15 rope--load-ropemacs nil 16 rope--started-from-pymacs nil 17 rope-occurrences-goto "" 18 rope-occurrences-next "")) (pymacs-python 19)))
>51 eval free_python(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 19)
<13 (return nil)
>45 eval pymacs_load_helper("ropemacs", "rope-")
<279    (return '(progn (pymacs-defuns '(19 rope--OldProgress nil 9 rope--LispProgress nil 8 rope-LispUtils nil 7 rope-message nil 6 rope--lisp-name nil 5 rope--load-ropemacs nil 4 rope--started-from-pymacs nil 3 rope-occurrences-goto "" 2 rope-occurrences-next "")) (pymacs-python 1)))
4

2 に答える 2

4

emacsの設定にこのようなものがありますか?(参照:agr /lopemacs /概要— Bitbucket

(require 'pymacs)
(pymacs-load "ropemacs" "rope-")

持っている場合は、rope-open-projectC-x p o)などのropemacsコマンドがあることを確認してください。

rope-completionsこれはPython関数として定義されているため、elispソースにその定義が表示されないことに注意してください。

ロープマックを適切にロードすると、C-h f rope-completions RET(ではなく)ヒットしたときにこれが表示されます。C-h S

rope-completions is an interactive Lisp function.

(rope-completions &rest ARGUMENTS)

It interfaces to a Python function.
于 2012-02-02T06:24:14.550 に答える
1

最終的にそれを行うことができた唯一の方法は、他のすべてのチュートリアルを無視して、Emacs For Python Github を使用することでした。それは非常にうまく機能し、とにかく使用しようとしていた多くのパッケージを組み合わせており、既存のバインディングと設定を台無しにしないように構成するのに十分簡単です.

于 2012-04-16T22:02:26.970 に答える