python otomatik girinti sorunu


11

Emacs 24.4 kullanıyorum. Python kodunu yazarken, Emacs girinti ile ilgili garip davranır.

Örneğin:

for i in range(10):
    print(i)
for i in range(10)

Ne zaman giriş :, Emacs üçüncü satırın başında gereksiz bir girinti ekler. Bu oldukça garip, bu bir hata mı?


.Emacs init dosyanızı ekleyebilir misiniz
— Vivian Maya

2
@VivianMaya Bunun yapılandırma dosyalarıyla ilgisi yok, emacs -Qyine de bu sorunu var
— Açlık

arkadaşım bazen Girinti bir şeyi geçebilir, böyle bir sorunum vardı ve bu tanımı geçmeyle ilgiliydi. Bunun bir ilgisi olmadığından eminseniz, neler olduğunu açıkça bilmiyorum.
— Vivian Maya

Yanıtlar:


16

Bunun nedeni electric-indent-modeEmacs 24.4'te varsayılan olarak etkindir. İle kapatabilirsiniz

(electric-indent-mode -1)

Elektrikli girinti modunu tamamen devre dışı bırakmak istemiyorsanız ancak iki nokta üst üste işaretinin Python modunda elektrikli girinti modunu etkinleştirmesini durdurmak istiyorsanız electric-indent-chars, Python modunun yerel bir değer verdiği iki nokta üst üste karakterini kaldırabilirsiniz .

(add-hook 'python-mode-hook
          (lambda ()
            (setq electric-indent-chars (delq ?: electric-indent-chars))))

Gerçekten görmek istediğim şey: koyduğum girinti yasal Python olduğunda, YALNIZCA BIRAKIN. elektrik girintisi modu, zaten söylediğimde ne istediğimi düşüncesizce tahmin ediyor ...
— AdamC

Ve bu yıllar sonra hala kırılmış.
— AdamC
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.