Как я могу кодировать в C ++ с одинаковым стилем отступов как в Vi, так и в Emacs? - PullRequest
3 голосов
/ 16 сентября 2009

Как два разработчика могут работать на одной и той же базе кода C ++, чтобы они могли работать прозрачно? Существует ли какой-либо общий стиль отступа для кода C ++, такой, что после его создания разработчики могут создавать код с одинаковым уровнем отступа.

Я обнаружил, что Emacs очень агрессивен в отношении отступов, он пытается пробиться, а Ви довольно простителен. Но стили emacs (смешанные табуляции и пробелы) не так уж дружественны для Vim.

Ответы [ 2 ]

11 голосов
/ 16 сентября 2009

Заставьте Emacs делать то, что вы хотите.

Из моего файла ~ / .emacs:

(defun my-c-mode-common-hook ()
  (local-set-key "\C-h" 'backward-delete-char)
  ;; this will make sure spaces are used instead of tabs
  (setq tab-width 4 indent-tabs-mode nil)
  (setq indent-tabs-mode 'nil)
  (setq c-basic-offset 4)
  (c-set-offset 'substatement-open 0)
  (c-set-offset 'statement-case-open 0)
  (c-set-offset 'case-label 0)
  (c-set-offset 'brace-list-open 0)
)

(add-hook 'c-mode-hook 'my-c-mode-common-hook)
(add-hook 'c++-mode-hook 'my-c-mode-common-hook)
(add-hook 'perl-mode-hook 'my-c-mode-common-hook)
(add-hook 'cperl-mode-hook 'my-c-mode-common-hook)
(add-hook 'emacs-lisp-mode-hook 'my-c-mode-common-hook)
(add-hook 'nroff-mode-hook 'my-c-mode-common-hook)
(add-hook 'tcl-mode-hook 'my-c-mode-common-hook)
(add-hook 'makefile-mode-hook 'my-c-mode-common-hook)
7 голосов
/ 16 сентября 2009

Когда я руководил небольшой командой, я использовал ловушку регистрации, которая называла программу BSD «отступ», которая заставляла код каждого в один и тот же стиль отступов. См. Применение стиля кодирования

...