Kod yazarken bir otomatik tamamlama açılır kutusunun görüntülenmesine izin vermek için Rsense kullanımıyla emacs yapılandırmamı güncelledim. Bu, çoğu dosyada iyi çalışır, ancak raylar projesinde rubyomda bir kod düzenlediğimde tablodan bir cevap seçmeme izin vermediğimi fark ettim.
İşte benim kurulumum: https://github.com/map7/simple_emacs
Bunu Ubuntu 10.04 altında kullanıyorum.
Basit ruby script dosyaları için harika çalışıyor. Yeni bir dosya açabilir ve yazabilirim.
"test".up...
Bende 'p' karakterini yazarken seçenekler listesi belirir ve ok tuşları ile listeyi yukarı ve aşağı kaydırabilir ve enter tuşu ile bir tane (örneğin: upcase) seçebilirim.
Ne işe yaramazsa aynı testi yaptığım zaman, ancak bir rails projesinin temel dizini.
Güncelleştirme:
Sorunun (raylar gerektirir) ile ilgili olduğunu bulduk, bu yüzden otomatik tamamlamanın sevmediği emacs-ray eklentisinde bir şey var.
Güncelleştirme:
Emacs rayları içinde -> raylar-project.el. Bu makroyu açıklarsam otomatik tamamlama çalışır, aksi halde olmaz:
(defmacro* rails-project:with-root ((root) &body body)
"If you use `rails-project:root' or functions related on it
several times in a block of code, you can optimize your code by
using this macro. Also, blocks of code will be executed only if
rails-root exist.
(rails-project:with-root (root)
(foo root)
(bar (rails-core:file \"some/path\")))
"
`(let ((,root (rails-project:root)))
(when ,root
(flet ((rails-project:root () ,root))
,@body))))
Birisi bunun neden kırıldığını otomatik olarak açıklayabilir mi?