EMACS 24にEMACSスターターキット付きECBをインストールします

StackOverflow https://stackoverflow.com/questions/8833235

  •  27-10-2019
  •  | 
  •  

質問

EMACSスターターキットがインストールされています。 ECBをインストールして実行しようとすると、機能しません。
なにが問題ですか? EMACSスターターキットでECBを動作させる方法は?

ECBのインストール

私は2つの方法を試しました:

  1. 追加 ecbmy-packages 説明されているようにリストします ここ
  2. インストール ecblist-packages 指図

両方の方法で同じ結果が得られます。インストール中、私は次のような多くの警告を受けました

In ecb-test-with-original-advice-set:
ecb-advice-test.el:122:16:Warning: reference to free variable `ecb-version'

In ecb-analyse-jump-to-tag:
ecb-analyse.el:443:24:Warning: `interactive-p' is an obsolete function (as of
23.2); use `called-interactively-p' instead.

ファイルの合計サイズは807行で、ここに追加する方法がわかりません。投稿を読み取り可能にしてください:)

ECB使用

追加してECBを開始しようとするとき (require 'ecb)
~/.emacs.d/$USER.el 次のエラーは、EMACS STARTで発生します。

File error: Cannot open load file, ecb

変数 load-path ECBファイルへのパスは含まれていません。私がなしでemacsを始めるとき (require 'ecb) エラーはありません load-path 文字列が含まれています
"/home/maksim/.emacs.d/elpa/ecb-2.40". 。次の行を追加します

(add-to-list 'load-path (expand-file-name "~/.emacs.d/elpa/ecb-2.40"))

EMACSをエラーなしで起動させますが、ECBはまだ機能していません。 ecb-activate 以下で説明する方法で行動します。

呼び出してECBを開始しようとする場合 ecb-activate に以下が表示されます *Messages* バッファ:

ECB 2.40 uses CEDET 1.0 (contains semantic 2.0, eieio 1.3, speedbar <unknown
version>).
ecb-activate-internal: Symbol's value as variable is void: stack-trace-on-error

次の行を追加した場合 ~/.emacs.d/$USER.el

(setq stack-trace-on-error t)

それから ecb-activate 以下に応答します

ECB 2.40 uses CEDET 1.0 (contains semantic 2.0, eieio 1.3, speedbar <unknown
version>).
All requirements for ECB 2.40 fulfilled - Enjoy it!
The ECB is now deactivated.
ecb-clean-up-after-activation-failure: ECB 2.40: Errors during the basic setup
of ECB. (error-type: void-function, error-data:
(ecb-enable-own-temp-buffer-show-futition))

バージョン情報

  • GNU EMACS 24.0.92.1(X86_64-PC-LINUX-GNU、GTK+バージョン2.22.0)
    Debianによって修正されたPluotの2011-12-06の
  • emacs-starter-kit 2.0.3
  • ECB 2.40
役に立ちましたか?

解決

私はあなたと同じ問題を抱えていました、私はそれを解決しました、ここに私の仕様があります:

  • GNU EMACS 24.0.93.1(Ubuntu 11.10でSnapshot GTKバージョンを使用しています)
  • スターターキット2.0.3
  • Cedet 1.0pre7(組み込みです)
  • CVSリポジトリの最新ECB(http://ecb.cvs.sourceforge.net/ecb/ecb/)

さらに、 @user1150335がバージョン番号で言ったようにしました @user1150335が言ったように、バージョン番号を変更する必要はありませんでした。何かを逃したか、構成についてもっと何かが必要かどうかを教えてください。

他のヒント

  1. ecb-uprade.elに追加(setq version-error nil)を追加します
    つまり、セデットのバージョンチェックはありません。

  2. ecb.elの(ecb-enable-own-own-own-own-buffer-show-futition)(ecb-enable-own-own-own-own-own-own-huffer-show-function)to(

  3. ECB.ELCおよびECB-USPGRADE.ELCを削除します

  4. MX BYTE-COMPILE-FILE ECB.ELおよびECB-USPGRADE.EL

  5. .emacsまたは.emacs.d/init.elに追加(setq stack-trace-on-error t)

  6. MX ECB-Active

ECB-CEDET-Required-Version-Max変数を編集してみてください(ECB-CEDET-Wrapper.el)。私のために働いた。更新:使用しているセデットのバージョンがわかりません。しかし、私がどのようにしたか例があります、段階的に:

  1. (setq stack-trace-on-error t)(.emacsファイルに追加)
  2. 次に、可変ECB-CEDET-Required-Version-Maxを見つける必要があります。 Cedetの私のバージョンでは、ecb-cedet-wrapper.el:83にあります
  3. バージョンのチェックをバイパスするには、現在インストールされているCEDETよりも大きくする必要があります。 (DefConst ECB-CEDET-Required-Version-Max '(1 2 4 9)は、現在利用可能なすべてのバージョンでトリックを行います。
  4. それで全部です。 Emacsを再起動してテストします。

何らかの理由で、修正後でもスタックトレースオンエラーは真でなければなりません。 GNU EMACS 24.0.92.1、CEDETバージョン:1.1Beta(BZRからの最後のチェックアウト)、およびCVSからのECBの最後のチェックアウトでテストしました。私は最近ECBを実際には使用していませんが、ECBバイトコンパイル、ECB活性化、ECBダクタブ酸、ECB Windows(メソッド、監督、ソース)、オープンCPPおよびELISPファイルにジャンプしました。すべてがうまく機能します。

修正する必要があります

(ECB-Henable-Own-Temp-Buffer-Show-Futition)

(ECB-Henable-Own-Temp-Buffer-ShowFunction)

ECB.ELで

GitHubには新しいECBブランチが呼ばれています Newcedet. 。 ECBのこのバージョンは、新しいEMACSバージョンとCEDET 1.1以降と互換性があります。もあります ECBメーリングリストでの議論 これに関して。

インストール ecb-snapshot

M-x package-list-packages

そして、それからECB-SNAPSHOTを選択します。また、これを〜/.emacs.d/$ user.elに置いてください

(require 'ecb)
(setq stack-trace-on-error t)
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top