C / C ++ / Java / Emacs Lisp / Python yazıyorsanız, semantik-yapışkan-fonk modu istediğinizi yapar.
NOT : Bu, şu anda Emacs 24.4'te bulunan CEDET'i değil, Git'ten CEDET ile çalışıyor gibi görünüyor. Git'ten Emacs almak için:
git clone http://git.code.sf.net/p/cedet/git cedet
Ve ilk olarak init dosyanızdaki her şeyin üzerine CEDET yükleyin:
(load-file (concat user-emacs-directory "/cedet/cedet-devel-load.el"))
(add-to-list 'load-path (concat user-emacs-directory "cedet/contrib"))
(load-file (concat user-emacs-directory "cedet/contrib/cedet-contrib-load.el"))
Etkinleştirildiğinde, bu mod işlev noktasının geçerli tamponun ilk satırında olduğunu gösterir. Bu, bir ekrandan daha fazla yayılan çok uzun bir işleve sahip olduğunuzda ve işlev adını okumak için yukarı kaydırmanız ve ardından orijinal konumuna kaydırmanız gerekmediğinde kullanışlıdır.
Bu görüntüler tam fonksiyon arayüzü (dönüş türü, işlev adı ve parametreleri), sadece işlev adı.
Etkinleştirmek için bu kodu init dosyanıza yerleştirin:
(require 'semantic)
(semantic-mode 1)
(global-semantic-stickyfunc-mode 1)
GÜNCELLEME : Akım ile ilgili problemlerden biri semantic-stickyfunc-mode
, birden fazla satıra dağılmış tüm parametreleri görüntülememesidir. Bu sorunu çözmek için stickyfunc-improve paketini oluşturdum .
DEMO :
İşte C'de bir demo:
İşte Emacs Lisp'te bir demo:
GÜNCELLEME : Alternatif olarak, dümen-semantik veya imenu kullanabilirsiniz . Bir işlevin içindeyken ve komutu çalıştırdığınızda, imleç doğrudan listedeki işleve yerleştirilir, böylece her zaman tam işlev arabirimini görebilirsiniz. DEMO:
İlk olarak, helm-semantic-or-imenu
işleve gitmek ve o helm-define-key-with-subkeys
noktaya hareket etmek için kullanıyorum .
Sonra helm-semantic-or-imenu
tekrar başlıyorum ve helm-define-key-with-subkeys
önceden seçiliyor.
Daha sonra, noktayı değişken dümen haritasına taşıyorum ve helm-semantic-or-imenu
iki işlev üzerinde yeniden yürütüyorum: dümen-sonraki-kaynak ve dümen-önceki-kaynak. Bu sefer, içinde çalıştığım şu anlamsal etiketi göstermek yerine (dümen haritası), Dümen Semantik tamponundaki diğer iki etiketi gösterir. Çünkü komutu çalıştırmadan önce bir önek argümanı sağladım.
Ayrıca bu demo Emacs Lisp'de, C / C ++ için de çalışıyor ve gerçekten uzun bir işlev arayüzüne sahipseniz daha esnektir.