With the previous Emacs tips example the kernel style was made available for files in the kernel-tree only. This patch updates the tip to add separate cc-mode indent style; it makes the kernel style easily available for any filetype mode that is managed by the Emacs cc-mode. We also fix the filename regexp in the example: Elisp function buffer-file-name returns full pathname, not a path relative to user's home directory. Hence a tilde (~) can't be used to refer to home directory (as the previous code did). Signed-off-by: Teemu Likonen <tlikonen@xxxxxx> --- Documentation/CodingStyle | 19 +++++++++++++------ 1 files changed, 13 insertions(+), 6 deletions(-) diff --git a/Documentation/CodingStyle b/Documentation/CodingStyle index 1875e50..2cda242 100644 --- a/Documentation/CodingStyle +++ b/Documentation/CodingStyle @@ -483,20 +483,27 @@ values. To do the latter, you can stick the following in your .emacs file: (* (max steps 1) c-basic-offset))) +(add-hook 'c-mode-common-hook + (lambda () + ;; Add kernel style + (c-add-style + "linux-tabs-only" + '("linux" (c-offsets-alist + (arglist-cont-nonempty + c-lineup-gcc-asm-reg + c-lineup-arglist-tabs-only)))))) + (add-hook 'c-mode-hook (lambda () (let ((filename (buffer-file-name))) ;; Enable kernel mode for the appropriate files (when (and filename - (string-match "~/src/linux-trees" filename)) + (string-match "src/linux-trees" filename)) (setq indent-tabs-mode t) - (c-set-style "linux") - (c-set-offset 'arglist-cont-nonempty - '(c-lineup-gcc-asm-reg - c-lineup-arglist-tabs-only)))))) + (c-set-style "linux-tabs-only"))))) This will make emacs go better with the kernel coding style for C -files below ~/src/linux-trees. +files which pathname matches src/linux-trees. But even if you fail in getting emacs to do sane formatting, not everything is lost: use "indent". -- 1.6.1.156.gb648d -- To unsubscribe from this list: send the line "unsubscribe linux-doc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html