2006-11-03 Michael Emmel <mike.emmel@gmail.com>
authorap <ap@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 3 Nov 2006 18:58:13 +0000 (18:58 +0000)
committerap <ap@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 3 Nov 2006 18:58:13 +0000 (18:58 +0000)
        Reviewed by Maciej.

        http://bugs.webkit.org/show_bug.cgi?id=9671

        * Scripts/wkstyle:
        Adds astyle sed script formats according to most of the style guidelines.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17575 268f45cc-cd09-0410-ab3c-d52691b4dbfc

WebKitTools/ChangeLog
WebKitTools/Scripts/wkstyle [new file with mode: 0755]

index 4fd33c964c10940795d6e6ce4807c4e68f287d21..2f150c1f4e2a6161e4312d96bdfa4a46ead9a728 100644 (file)
@@ -1,3 +1,12 @@
+2006-11-03  Michael Emmel  <mike.emmel@gmail.com>
+
+        Reviewed by Maciej.
+        
+        http://bugs.webkit.org/show_bug.cgi?id=9671
+
+        * Scripts/wkstyle:
+        Adds astyle sed script formats according to most of the style guidelines. 
+
 2006-11-03  Alexey Proskuryakov  <ap@nypop.com>
 
         Reviewed by Adele.
diff --git a/WebKitTools/Scripts/wkstyle b/WebKitTools/Scripts/wkstyle
new file mode 100755 (executable)
index 0000000..690b5fa
--- /dev/null
@@ -0,0 +1,66 @@
+
+# Copyright (C) 2006 Michael Emmel<mike.emmel@gmail.com>  All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions
+# are met:
+#
+# 1.  Redistributions of source code must retain the above copyright
+#     notice, this list of conditions and the following disclaimer.
+# 2.  Redistributions in binary form must reproduce the above copyright
+#     notice, this list of conditions and the following disclaimer in the
+#     documentation and/or other materials provided with the distribution.
+# 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
+#     its contributors may be used to endorse or promote products derived
+#     from this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
+# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+# DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
+# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+astyle \
+--style=linux \
+--indent=spaces=4 \
+--convert-tabs \
+$@
+
+#astyle does not support unpadding so we use sed
+for i in $@
+do
+echo $i
+#first print the changes we are making
+sed  -n -e '
+/( .*/p  
+s/( /(/gp   
+/*. )/p
+s/ )/)/gp   
+#supress printing this
+#/^namespace WebCore/{
+#N
+#s/\n{/ {/p
+#}
+' $i 
+
+#do it for real
+sed -e '
+#unpad leading spaces
+s/( /(/g
+#unpad traling spaces
+s/ )/)/g
+#fixup the namspec decl
+/^namespace WebCore/{
+N
+s/\n{/ {/
+}
+' $i > $i.sed
+mv $i.sed $i
+done
+
+