r189741 - Switch the default mode for clang-format to '-file'. Make 'LLVM' the

Chandler Carruth chandlerc at gmail.com
Mon Sep 2 00:42:03 PDT 2013


Author: chandlerc
Date: Mon Sep  2 02:42:02 2013
New Revision: 189741

URL: http://llvm.org/viewvc/llvm-project?rev=189741&view=rev
Log:
Switch the default mode for clang-format to '-file'. Make 'LLVM' the
fallback syntax used when we fail to find a '.clang-format' file. Adjust
variable names appropriately.

Update the editor integration pieces that specify a '-style' option to
specify it as '-style=file'. I left the functionality in place because
even if the preferred method is to use '.clang-format' files, this way
if someone needs to clobber the style in their editor we show how to do
so in these examples.

Also check in a '.clang-format' file for Clang to ensure that separate
checkouts and builds of Clang from LLVM can still get the nice
formatting. =] This unfortunately required nuking the test for the
absence of a '.clang-format' file as now the directory happening to be
under your clang source tree will cause there to always be a file. ;]

Added:
    cfe/trunk/.clang-format
Modified:
    cfe/trunk/test/Format/style-on-command-line.cpp
    cfe/trunk/tools/clang-format/ClangFormat.cpp
    cfe/trunk/tools/clang-format/clang-format-sublime.py
    cfe/trunk/tools/clang-format/clang-format.el
    cfe/trunk/tools/clang-format/clang-format.py

Added: cfe/trunk/.clang-format
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/.clang-format?rev=189741&view=auto
==============================================================================
--- cfe/trunk/.clang-format (added)
+++ cfe/trunk/.clang-format Mon Sep  2 02:42:02 2013
@@ -0,0 +1 @@
+BasedOnStyle: LLVM

Modified: cfe/trunk/test/Format/style-on-command-line.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Format/style-on-command-line.cpp?rev=189741&r1=189740&r2=189741&view=diff
==============================================================================
--- cfe/trunk/test/Format/style-on-command-line.cpp (original)
+++ cfe/trunk/test/Format/style-on-command-line.cpp Mon Sep  2 02:42:02 2013
@@ -4,9 +4,8 @@
 // RUN: clang-format -style="{BasedOnStyle: invalid, IndentWidth: 7}" %t.cpp 2>&1 | FileCheck -strict-whitespace -check-prefix=CHECK3 %s
 // RUN: clang-format -style="{lsjd}" %t.cpp 2>&1 | FileCheck -strict-whitespace -check-prefix=CHECK4 %s
 // RUN: [ ! -e %T/.clang-format ] || rm %T/.clang-format
-// RUN: clang-format -style=file %t.cpp 2>&1 | FileCheck -strict-whitespace -check-prefix=CHECK5 %s
 // RUN: printf "BasedOnStyle: google\nIndentWidth: 5\n" > %T/.clang-format
-// RUN: clang-format -style=file %t.cpp 2>&1 | FileCheck -strict-whitespace -check-prefix=CHECK6 %s
+// RUN: clang-format -style=file %t.cpp 2>&1 | FileCheck -strict-whitespace -check-prefix=CHECK5 %s
 void f() {
 // CHECK1: {{^        int\* i;$}}
 // CHECK2: {{^       int \*i;$}}
@@ -15,9 +14,7 @@ void f() {
 // CHECK3: {{^  int \*i;$}}
 // CHECK4: Error parsing -style: Invalid argument, using LLVM style
 // CHECK4: {{^  int \*i;$}}
-// CHECK5: Can't find usable .clang-format, using LLVM style
-// CHECK5: {{^  int \*i;$}}
-// CHECK6: {{^     int\* i;$}}
+// CHECK5: {{^     int\* i;$}}
 int*i;
 int j;
 }

Modified: cfe/trunk/tools/clang-format/ClangFormat.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/tools/clang-format/ClangFormat.cpp?rev=189741&r1=189740&r2=189741&view=diff
==============================================================================
--- cfe/trunk/tools/clang-format/ClangFormat.cpp (original)
+++ cfe/trunk/tools/clang-format/ClangFormat.cpp Mon Sep  2 02:42:02 2013
@@ -27,8 +27,8 @@
 
 using namespace llvm;
 
-// Default style to use when no style specified or specified style not found.
-static const char *DefaultStyle = "LLVM";
+// Fallback style when no style specified or found in a .clang-format file.
+static const char FallbackStyle[] = "LLVM";
 
 static cl::opt<bool> Help("h", cl::desc("Alias for -help"), cl::Hidden);
 
@@ -72,7 +72,7 @@ static cl::opt<std::string>
                    "Use -style=\"{key: value, ...}\" to set specific\n"
                    "parameters, e.g.:\n"
                    "  -style=\"{BasedOnStyle: llvm, IndentWidth: 8}\""),
-          cl::init(DefaultStyle), cl::cat(ClangFormatCategory));
+          cl::init("file"), cl::cat(ClangFormatCategory));
 static cl::opt<bool> Inplace("i",
                              cl::desc("Inplace edit <file>s, if specified."),
                              cl::cat(ClangFormatCategory));
@@ -108,20 +108,20 @@ static FileID createInMemoryFile(StringR
 
 FormatStyle getStyle(StringRef StyleName, StringRef FileName) {
   FormatStyle Style;
-  getPredefinedStyle(DefaultStyle, &Style);
+  getPredefinedStyle(FallbackStyle, &Style);
 
   if (StyleName.startswith("{")) {
     // Parse YAML/JSON style from the command line.
     if (error_code ec = parseConfiguration(StyleName, &Style)) {
       llvm::errs() << "Error parsing -style: " << ec.message()
-                   << ", using " << DefaultStyle << " style\n";
+                   << ", using " << FallbackStyle << " style\n";
     }
     return Style;
   }
 
   if (!StyleName.equals_lower("file")) {
     if (!getPredefinedStyle(StyleName, &Style))
-      llvm::errs() << "Invalid value for -style, using " << DefaultStyle
+      llvm::errs() << "Invalid value for -style, using " << FallbackStyle
                    << " style\n";
     return Style;
   }
@@ -153,7 +153,7 @@ FormatStyle getStyle(StringRef StyleName
       return Style;
     }
   }
-  llvm::errs() << "Can't find usable .clang-format, using " << DefaultStyle
+  llvm::errs() << "Can't find usable .clang-format, using " << FallbackStyle
                << " style\n";
   return Style;
 }

Modified: cfe/trunk/tools/clang-format/clang-format-sublime.py
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/tools/clang-format/clang-format-sublime.py?rev=189741&r1=189740&r2=189741&view=diff
==============================================================================
--- cfe/trunk/tools/clang-format/clang-format-sublime.py (original)
+++ cfe/trunk/tools/clang-format/clang-format-sublime.py Mon Sep  2 02:42:02 2013
@@ -19,9 +19,10 @@ import subprocess
 # Change this to the full path if clang-format is not on the path.
 binary = 'clang-format'
 
-# Change this to format according to other formatting styles
-# (see clang-format -help).
-style = 'LLVM'
+# Change this to format according to other formatting styles. See the output of
+# 'clang-format --help' for a list of supported styles. The default looks for
+# a '.clang-format' file to indicate the style that should be used.
+style = 'file'
 
 class ClangFormatCommand(sublime_plugin.TextCommand):
   def run(self, edit):

Modified: cfe/trunk/tools/clang-format/clang-format.el
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/tools/clang-format/clang-format.el?rev=189741&r1=189740&r2=189741&view=diff
==============================================================================
--- cfe/trunk/tools/clang-format/clang-format.el (original)
+++ cfe/trunk/tools/clang-format/clang-format.el Mon Sep  2 02:42:02 2013
@@ -36,7 +36,7 @@
   (let* ((orig-windows (get-buffer-window-list (current-buffer)))
          (orig-window-starts (mapcar #'window-start orig-windows))
          (orig-point (point))
-         (style "LLVM"))
+         (style "file"))
     (unwind-protect
         (call-process-region (point-min) (point-max) clang-format-binary t t nil
                              "-offset" (number-to-string (1- begin))

Modified: cfe/trunk/tools/clang-format/clang-format.py
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/tools/clang-format/clang-format.py?rev=189741&r1=189740&r2=189741&view=diff
==============================================================================
--- cfe/trunk/tools/clang-format/clang-format.py (original)
+++ cfe/trunk/tools/clang-format/clang-format.py Mon Sep  2 02:42:02 2013
@@ -26,9 +26,10 @@ import vim
 # Change this to the full path if clang-format is not on the path.
 binary = 'clang-format'
 
-# Change this to format according to other formatting styles (see 
-# clang-format -help)
-style = 'LLVM'
+# Change this to format according to other formatting styles. See the output of
+# 'clang-format --help' for a list of supported styles. The default looks for
+# a '.clang-format' file to indicate the style that should be used.
+style = 'file'
 
 # Get the current text.
 buf = vim.current.buffer





More information about the cfe-commits mailing list