modu dosya boyutunda pratik sınırlar?


13

Yüz kadar üst düzey başlık ile 6.000 satır çalışan bir kuruluş modu dosyam var. Yüklenmesi veya kaydedilmesi yaklaşık bir dakika sürmeye başladı ve bazen yabani otlara emaclar gönderiyor ve zorla bırakmam gerekiyor.

Herhangi biriniz bunun kuruluş modunda pratik olarak işlenemeyecek kadar büyük bir dosya olduğunu düşünüyor musunuz? Daha büyük dosyalarla deneyiminiz var mı? Aynı tür gecikmeler yaşıyor musunuz? Yoksa kurmuş olduğum diğer tüm emacs paketleri gibi, yavaşlığın nedenlerini başka bir yerde mi aramalıyım? Belki genel olarak çok fazla emac soruyorum.

Bu Mac OS X Mavericks üzerinde 24.4 homebrew emacs ile.


2
Onunla birlikte başka bir şey mi kullanıyorsunuz linum-mode? Başka hangi özel küçük modlar aktif (varsa)?
hukukçu

Listelemek için çok fazla var ... Emacs-live (clojure araç kutusu) ile başladım ve elpa ve marmelatta bulabileceğim her ilginç görünümlü paketi promiscuously yükledim. Çıplak emacs kurulumuyla bir test yapacağım; org-mode tamamsa paketlerimi ikiye bölmeye başlayacağım. Yeniden başlamak için iyi bir zaman olabilir.
Reb.Cabin

2
Bu dosya işlenemeyecek kadar büyük değil . 7000 satırlık bir dosya olan github.com/grettke/home/blob/master/ALEC.org ve çok az sayıda başlık ile deneyimim var . Yükle karşılaşmıyorum veya yavaşlıktan tasarruf etmiyorum. Başlıkları daralttığımda yavaşlıyorum, bu yüzden koşuyorum #+STARTUP: showeverything. En yeni kuruluş kipiyle birlikte gelen en yeni Emac'lara sahipsiniz. emacs -QSorunlu paketi yavaşlatmak için Emacs'ı ile başlatın ve paketleri yavaşça geri ekleyin. "24.4.1" ve "8.2.10" emacs ve org.
grettke

Yanıtlar:


18

Emacs'ın daha az bilinen özelliklerinden biri, bir profil oluşturucusu olmasıdır! Dosyanızın çağrıldığını varsayalım foo.org, o zaman bunu yapabilirsiniz:

M-xprofiler-start

C-x ffoo.org

M-xprofiler-report

Bunu yaptıktan sonra Emacs, CPU kullanımı ile ilgili istatistiklere sahip bir arabellek açacaktır (profili oluşturduğunuzda bellek veya hem CPU hem de bellek profili de seçebilirsiniz). Bu, hangi işlevlerin yürütülmesi için en çok zaman alacağına dair bazı ipuçları vermelidir.


Arabelleğimin 7 binden fazla satırı varsa, çok uzun duraklamalar var gibi görünüyor. Bunun neden böyle olduğunu biliyor musun?
user8128167

@ user89861 İlk tahminim yazı tipi oluşturma olurdu, ancak profil oluşturmaya çalışmadan bunu söylemek zor.
wvxvw

Tamam, bu bir profiler raporu için aldığım şey: + timer-event-handler 408694 96% + command-execute 14634 3% + ... 1480 0% + redisplay_internal (C işlevi) 183 0% + isearch-pre-command 1% 0
user8128167

@ user89861 şu iki değişkenden herhangi birine sahip olup olmadığına bakın: stackoverflow.com/a/11670718/5691066 hangi zamanlayıcıyı çalıştırdığına dair bir ipucu verecektir.
wvxvw

3

Her paketi emacs ortamımdan çıkardım ve kuruluş modu 6.000 satırlı dosyamda düzgün çalışıyor.

Yüklediğim başka bir şey soruna neden oluyordu. Bunun ne olduğunu anlamak için paket kurulumlarımı ikiye bölmem gerekecek, ancak kuruluş modu şimdi iyi görünüyor.


Yeni bir emacs-live yüklemesi yaptım - bu sorunlara neden olmadı.
Reb.Cabin

Sorunuz tatmin edici bir şekilde yanıtlandıysa ve ek yanıtlara ihtiyacınız yoksa, lütfen yanıtınızı kabul etmeyi düşünün, böylece bu yanıtlanmamış sorular listesinden kaldırılmalıdır.
Drew

@ Çekme - Kişinin kendi cevabını kabul etmek için bir bekleme süresi vardır - 36 veya 48 saat gibi.
hukukçu

1
@lawlist: Tamam. Ancak soruyu silmek isteyip istemediğiniz hakkında düşünmek için bir bekleme listesi yoktur, çünkü Soru-Cevap çok yararlı / ilginç olmayabilir. ;-)
Drew

3
soru profiler hakkında ilginç bir nokta ortaya çıkardı, bu yüzden sorunun yararlı bir tarafı / etkisi vardı :)
Reb.Cabin
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.