emacs:将python空间转换为制表符

时间:2013-11-26 17:38:07

标签: python emacs tabs whitespace

目前我在.emacs文件中使用以下设置:

;; single tab for every indent
(add-hook 'python-mode-hook
  (lambda ()
    (setq indent-tabs-mode t)
    (setq python-indent 4)
    (setq tab-width 4)))

这适用于我创建的任何新文件。如果我从git / hg下载一个碰巧在空间上的项目,emacs将不会将它们转换为空间。我怎样才能强制emacs将所有空格转换为标签,而不管文件的原始设置是什么。

据我所知,如果它是一个git / hg repo,这将创建大量的变更集,但我仍然想知道如何转换任何带空格的文件,通过我的emacs设置将其更改为标签。

2 个答案:

答案 0 :(得分:4)

C-x h 标记整个缓冲区,然后使用 M-x tabify

答案 1 :(得分:1)

基于三联的评论:

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