[PATCH] Documentation: update CodingStyle tips for Emacs users

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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

[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux FS]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux