svn rev #23061: trunk/src/ util/

tlyu@MIT.EDU tlyu at MIT.EDU
Mon Oct 26 22:13:32 EDT 2009


http://src.mit.edu/fisheye/changelog/krb5/?cs=23061
Commit By: tlyu
Log Message:
Add "reindent" target to top-level Makefile.in.  Add
krb5-batch-indent.el.  These perform a batch reindent based upon the
Emacs file-local variable settings, taking care to distinguish between
files that are supposed to conform to the coding style versus those
that are marked as being exceptions.  A later commit will explicitly
mark the files that we expect to conform to our coding standards.


Changed Files:
U   trunk/src/Makefile.in
A   trunk/src/util/krb5-batch-reindent.el
Modified: trunk/src/Makefile.in
===================================================================
--- trunk/src/Makefile.in	2009-10-27 00:26:10 UTC (rev 23060)
+++ trunk/src/Makefile.in	2009-10-27 02:13:31 UTC (rev 23061)
@@ -654,3 +654,14 @@
 	else \
 		echo "** Coverity Prevent analysis results not commit to Defect Manager"; \
 	fi
+
+FIND = find
+XARGS = xargs
+EMACS = emacs
+
+reindent::
+	$(FIND) $(SRCTOP) \
+	\( -name '*.[ch]' -o -name '*.hin' -o -name '*.[ch].in' \) \
+	-print0 | $(XARGS) -0 $(EMACS) -q -batch \
+	-l $(SRCTOP)/util/krb5-c-style.el \
+	-l $(SRCTOP)/util/krb5-batch-reindent.el

Added: trunk/src/util/krb5-batch-reindent.el
===================================================================
--- trunk/src/util/krb5-batch-reindent.el	2009-10-27 00:26:10 UTC (rev 23060)
+++ trunk/src/util/krb5-batch-reindent.el	2009-10-27 02:13:31 UTC (rev 23061)
@@ -0,0 +1,33 @@
+;;; -*- mode: emacs-lisp; indent-tabs-mode: nil -*-
+(if (not noninteractive)
+    (error "to be used only with -batch"))
+;; Avoid vc-mode interference.
+(setq vc-handled-backends nil)
+(while command-line-args-left
+  (let ((filename (car command-line-args-left))
+        (error nil)
+        ;; No backup files?
+        (make-backup-files nil))
+    (find-file filename)
+
+    ;; (goto-char (point-min))
+    ;; (if (looking-at "\\s-*/\\*\\s-*-\\*-.*-\\*-\\s-*\\*/\\s-*\n")
+    ;;  (delete-region (match-beginning 0) (match-end 0)))
+    ;; (insert "/* -*- mode: c; c-basic-offset: 4; indent-tabs-mode: nil -*- */\n")
+    ;; (normal-mode)
+
+    (if (eq indent-tabs-mode nil)
+        (untabify (point-min) (point-max)))
+
+    ;; Only reindent if the file C style is guessed to be "krb5".
+    (if (and (eq c-basic-offset 4)
+             (eq indent-tabs-mode nil))
+        (progn
+          (c-set-style "krb5")
+          (c-indent-region (point-min) (point-max))))
+
+    (whitespace-cleanup)
+
+    (save-buffer)
+    (kill-buffer)
+    (setq command-line-args-left (cdr command-line-args-left))))




More information about the cvs-krb5 mailing list