2014-03-07 2 views
1

비단뱀 모드에서 이맥스 탭 들여 쓰기는 4 칸 대신 탭을 사용합니다. 내가 시도이맥스 수정 파이썬에 대한 탭 들여 쓰기

(setq-default indent-tabs-mode t) 
(setq-default tab-width 4) 
(setq indent-line-function 'insert-tab) 

:

내 이맥스 init.el 파일이 포함

(setq-default indent-tabs-mode nil) 

하지만 어떤 차이를하지 않았다. white-space 모드를 emacs에서 사용하는 경우 해당 탭이 4 개의 공백을 들여 쓰지 않으며 untabify은 4 개의 공백으로 탭을 수정합니다. TAB을 4 개의 공백으로 사용하려면 어떻게해야합니까? 당신이 탭을 삽입 할 경우

(add-hook 'python-mode-hook 
     (lambda() 
     (setq-default indent-tabs-mode nil) 
     (setq-default tab-width 4) 
     (setq-default python-indent 4))) 

답변

2

, 들여 쓰기 탭이 모드는`t '이어야합니다

UPDATE 는에 init.el 설정을 변경하여 해결했습니다. 표시된대로 변경하십시오. 쓰기

(setq indent-tabs-mode t) 

모드와 함께 전무로 설정하면 python.el는, 버그가 보인다. 후크는 모드 init 이후에 실행되므로이를 수정할 수 있어야합니다.

그렇지 않은 경우 선택을 허용하는 python-mode.el을 사용해보십시오. indent-tabs-mode는 모든 버퍼에서 명시 적으로 python.el에 의해 버퍼 로컬로 설정 될 수 있습니다.

1

늦어도 다음과 같은 후크가 효과가 있습니다. 공백 만

(add-hook 'python-mode-hook 
     (lambda() 
     (setq indent-tabs-mode nil) 
     (setq python-indent 4) 
     (setq tab-width 4)) 
     (untabify (point-min) (point-max))) 

탭만

(add-hook 'python-mode-hook 
      (lambda() 
      (setq indent-tabs-mode t) 
      (setq python-indent 4) 
      (setq tab-width 4)) 
      (tabify (point-min) (point-max)))