2015-12-10 3 views
0

В нашей компании у нас есть люди, которые используют Windows, OS-X и Ubuntu для написания кода (в основном javascript), и я использую главным образом Emacs в качестве текстового редактора.Отступы и вкладки в emacs

Тем не менее, я совершенно новый для Emacs, и я нахожу, что настройка всего вклада vs space немного запутанна.

Это то, что файлы настройки для моего друга Visual Studio Code выглядит

// Place your settings in this file to overwrite the default settings 
{ 
"editor.tabSize": 4, 
"editor.insertSpaces": false, 

"files.trimTrailingWhitespace": true 
} 

Как реплицировать одни и те же настройки на Emacs? Это то, что у меня есть до сих пор как часть моего файла ~/.emacs/init.el, но он по-прежнему не работает должным образом.

;;Tab and spaces 
(setq-default indent-tabs-mode nil) 
(setq default-tab-width 4) 

Любая помощь для решения этой проблемы и/или соответствующие ссылки, чтобы узнать больше будет понятно ..

+0

Какой язык вы используете? Можете ли вы привести пример кода с неправильным отступом? – legoscia

+0

Я пытаюсь сделать для javascript .. конкретно nodejs code..Sorry, не могу вынести этот код в качестве примера здесь ... – Sharath

ответ

1

Существует ошибка в вашем конф (возможно вставить рь)

;;Tab and spaces 
(setq-default indent-tabs-mode nil) 
(setq-default tab-width 4) ;; not (setq default-tab-width 4) 

Эта конфигурация это хорошо, но иногда другая конфигурация (конфигурация основного или второстепенного режима) может перезаписать ваши значения по умолчанию.

Например

  • использование Python python-indent-offset или python-indent (устаревшее, поскольку 24.3).
  • C++ использовать c-indent-level
  • nxml использовать nxml-child-indent и nxml-attribute-indent.
  • ...

Таким образом, решение зависит от языка. Вам нужна правильная настройка по языку.

Я надеюсь, что это поможет

+0

спасибо @djangoliv .. произошла ошибка в моей конфигурации. Любые ссылки для настройки javascript? – Sharath

+0

Это зависит от основного режима, который вы используете для javascript. Вы можете попробовать с помощью '(setq js-indent-level 4)' – djangoliv

+0

Итак, если я правильно понимаю, '(setq-default indent-tabs-mode nil)' фактически использует пробелы вместо вкладок правильно? поэтому моя конфигурация должна быть '(setq-default indent-tabs-mode nil) (setq js-indent-level 4)' – Sharath

Смежные вопросы