Отключить Emacs от преобразования вкладок в пробелы - PullRequest
0 голосов
/ 29 января 2020

Я недавно начал использовать Emacs, и проблема, с которой я столкнулся, заключается в том, что редактор автоматически преобразует все вкладки в пробелы. Это стало немного раздражать сейчас.

Вот мой .emacs файл для справки:

(require 'package)
(let* ((no-ssl (and (memq system-type '(windows-nt ms-dos))
                    (not (gnutls-available-p))))
       (proto (if no-ssl "http" "https")))
  (when no-ssl
    (warn "\
Your version of Emacs does not support SSL connections,
which is unsafe because it allows man-in-the-middle attacks.
There are two things you can do about this warning:
1. Install an Emacs version that does support SSL and be safe.
2. Remove this warning from your init file so you won't see it again."))
  ;; Comment/uncomment these two lines to enable/disable MELPA and MELPA Stable as desired
  (add-to-list 'package-archives (cons "melpa" (concat proto "://melpa.org/packages/")) t)
  ;;(add-to-list 'package-archives (cons "melpa-stable" (concat proto "://stable.melpa.org/packages/")) t)
  (when (< emacs-major-version 24)
    (add-to-list 'package-archives (cons "gnu" (concat proto "://elpa.gnu.org/packages/")))))
(package-initialize)

(custom-set-variables
 '(custom-enabled-themes (quote (dracula)))
 '(custom-safe-themes)
 '(display-line-numbers-type (quote relative))
 '(global-display-line-numbers-mode t)
 '(menu-bar-mode nil)
 '(package-selected-packages
   (quote
    (company-irony-c-headers company-irony micgoline elpy company-jedi molokai-theme gruvbox-theme autopair auto-complete anaconda-mode nyan-mode dracula-theme company)))
 '(scroll-bar-mode nil)
 '(tool-bar-mode nil))
(custom-set-faces
 )

(setq make-backup-files nil)
(setq auto-save-default nil)
(setq inhibit-startup-message t)   ;; hide the startup message

(elpy-enable)
(pyenv-mode)
(setq python-shell-interpreter "ipython"
      python-shell-interpreter-args "-i --simple-prompt")
(require 'powerline)

Любые предложения о том, как остановить emacs от такого поведения?

1 Ответ

1 голос
/ 29 января 2020

По предложению Дрю, я отправляю это как ответ:

Вы проверяли переменную indent-tabs-mode?

С этим вы сможете переключаться между emacs, используя пробелы или табуляции.

Как описано в вики emacs здесь Я бы предположил, что в некотором активном режиме это настраивается в ноль в вашем Emacs. Вы можете найти другое объяснение со ссылками на обсуждения о том, являются ли вкладки злыми или нет здесь

РЕДАКТИРОВАТЬ: Кажется, что странно python -режим устанавливает indent-tabs-mode в значение t. Может быть, эта Emacs Wiki entry решит вашу проблему. Этот фрагмент из вики:

(add-hook 'python-mode-hook
    (lambda ()
        (setq-default indent-tabs-mode t)
        (setq-default tab-width 4)
        (setq-default py-indent-tabs-mode t)
    (add-to-list 'write-file-functions 'delete-trailing-whitespace)))

выглядит так, как будто сработает. Надеюсь, это поможет.

...