2012-04-26 6 views
7

私はRuby ElectricモードをELPA経由でインストールしました。Emacs Ruby Electricが最後に挿入されない

私はルビーファイル~/test.rb

C-h mを訪問したが、ルビー、電気モードは私のようなコードを入力するときしかし、

Enabled minor modes: Auto-Compression Auto-Encryption Blink-Cursor Column-Number 
Delete-Selection File-Name-Shadow Global-Font-Lock Global-Linum Iswitchb Line-Number 
Menu-Bar Mouse-Wheel Shell-Dirtrack Tooltip Transient-Mark 

下の出力を参照して、フォントロックがあるとして有効であることが明らかになりました。

class Test 
    def foo() 

私はそれが私が所属思った私が見つけたページ、上で推奨されていたとして、私はpackage-list経由でインストールRET

UPDATE

を打つに挿入されたendオートを得ることはありません著者。 ~/emacs.d/elpa/ruby-electric-1.1/ruby-electric.elの出典を見ると、次のようになります。

;; FIXME: it should be available in next versions of ruby-mode.el 
(defun ruby-insert-end() 
    (interactive) 
    (insert "end") 
    (ruby-indent-line t) 
    (end-of-line)) 

悪いファイルがある可能性があります。別のファイルを試してみるようです。

UPDATE

私はruby-electric.el

(defun ruby-insert-end() 
    "Insert \"end\" at point and reindent current line." 
    (interactive) 
    (insert "end") 
    (ruby-indent-line t) 
    (end-of-line)) 

Aにこれを追加し、この主旨https://gist.github.com/1213051を取った後http://svn.ruby-lang.org/repos/ruby/tags/v1_9_2_0/misc/ruby-electric.el

この記事からリンクさ

http://appsintheopen.com/articles/1-setting-up-emacs-for-rails-development/part/7-emacs-ruby-foo

からダウンロードruby-electric.elを使用ND私.emacsにこのフックは、また、このGoogleグループのスレッドで説明したようにフック

(add-hook 'ruby-mode-hook 
     (lambda() 
     (require 'ruby-electric) 
     (ruby-electric-mode t))) 

せずに動作するように表示されます。 https://groups.google.com/forum/?fromgroups#!msg/emacs-on-rails/Cuh_x5eCK_M/KDwjY4K6X1YJ

+0

電気モードは、通常、スペースや特殊文字のように(RETではなく、 'class' + spaceは電気である) – Casper

+0

のように特殊文字で動作することに注意してください。興味深いことに、Symbolの関数定義はvoid:ruby-insert-end' defやクラスの後にスペースを置いたとき – tojofo

答えて

4

あなたのemacsステータスバーにRElと表示されていることを確認してください。

私はここからルビーの電気をダウンロード:
http://shylock.uw.hu/Emacs/ruby-electric.el

を私は、emacsのにライブラリをロードし、そしてルビーファイルに入ったとして ルビー電気活性化:私はタイプすると

M-x ruby-electric-mode 

classとヒットスペースは自動的にend(emacs 23を実行中)で埋められます。もしあなたがELPAを動作させることができない場合は、そのバージョンのruby-electric.elを試してみたいかもしれません。

+0

ここからリンクされている 'ruby-electric.el'を使ってしまいました; http://appsintheopen.com/articles/1-setting-up-emacs -for-rails-development/part/7-emacs-ruby-foo – tojofo

+0

ELPA以外のものを使ってこの答えを受け入れるのは私のために働いた – tojofo

0

あなたは「ルビーの追加」「ルビー電気」を使用するために含める必要があります。

https://github.com/ruby/ruby/blob/trunk/misc/ruby-additional.el

は、いくつかの日のemacsに統合されるべきです。

+0

PreludeとRubyの電気を使ってうまくいきました私より1日目。 – tojofo

+0

クール。さらにルビーモードのsugarcoat = Dについてはhttps://github.com/rejeep/ruby-tools.elをチェックしてください – nofxx

関連する問題