파이썬 자동 들여 쓰기 문제


11

Emacs 24.4를 사용하고 있습니다. Python 코드를 작성할 때 Emacs는 들여 쓰기와 관련하여 이상하게 동작합니다.

예를 들면 다음과 같습니다.

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

를 입력 :하면 Emacs는 세 번째 줄의 시작 부분에 불필요한 들여 쓰기를 추가합니다. 이것은 매우 이상합니다. 버그입니까?


당신은 당신의 이맥스 파일 init를 추가 할 수
비비안 마야

2
@VivianMaya 이것은 설정 파일과 관련이 없지만 emacs -Q여전히 문제가 있습니다
Hunger

내 친구는 때때로 들여 쓰기가 무언가를 가로지를 수 있습니다. 이와 같은 문제가 있었고 그것은 정의를 넘어서는 것입니다. 당신이 그것과 아무 관련이 없다고 확신한다면, 나는 무슨 일이 일어나고 있는지 분명하지 않습니다.
Vivian Maya

답변:


16

이 문제는 electric-indent-modeEmacs 24.4에서 기본적으로 활성화되어 있습니다. 당신은 그것을 해제 할 수 있습니다

(electric-indent-mode -1)

전기 들여 쓰기 모드를 완전히 비활성화하지 않고 Python 모드에서 콜론 문자가 전기 들여 쓰기 모드를 활성화하지 못하게하려면에서에서 콜론 문자를 제거하면 electric-indent-charsPython 모드가 로컬 값을 제공합니다.

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

내가 정말로보고 싶은 것은 : 들여 쓰기가 합법적 인 파이썬 인 경우, 그대로 둡니다. 전기-들여 쓰기 모드는 내가 이미 말했을 때 내가 원하는 것을 무심코 추측합니다 ...
AdamC

그리고 몇 년이 지난 후에도 여전히 깨졌습니다.
AdamC
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.