两个开发人员如何在同一个 C++ 代码库上工作,以便他们可以透明地工作?C++ 代码是否有任何共同的缩进样式,一旦建立,两个开发人员可以生成具有相同缩进级别的代码。
我发现 Emacs 对缩进非常有侵略性,它试图强迫自己的方式,而 Vi 非常宽容。但是 emacs 样式(混合制表符和空格)对 Vim 不太友好。
两个开发人员如何在同一个 C++ 代码库上工作,以便他们可以透明地工作?C++ 代码是否有任何共同的缩进样式,一旦建立,两个开发人员可以生成具有相同缩进级别的代码。
我发现 Emacs 对缩进非常有侵略性,它试图强迫自己的方式,而 Vi 非常宽容。但是 emacs 样式(混合制表符和空格)对 Vim 不太友好。
让 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)
当我管理一个小团队时,我使用了一个签入钩子,称为 BSD 程序“缩进”,它强制每个人的代码都采用相同的缩进样式。请参阅强制编码风格