| Index: Tools/Scripts/webkitpy/formatter/fix_single_quote_strings.py
|
| diff --git a/Tools/Scripts/webkitpy/formatter/fix_single_quote_strings.py b/Tools/Scripts/webkitpy/formatter/fix_single_quote_strings.py
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..996c0cd0b639d2319e0083e93018d77fa14d2b34
|
| --- /dev/null
|
| +++ b/Tools/Scripts/webkitpy/formatter/fix_single_quote_strings.py
|
| @@ -0,0 +1,29 @@
|
| +# Copyright 2014 The Chromium Authors. All rights reserved.
|
| +# Use of this source code is governed by a BSD-style license that can be
|
| +# found in the LICENSE file.
|
| +
|
| +"""
|
| +A 2to3 fixer that converts all string literals to use single quotes.
|
| +
|
| +Strings that contain single quotes will not be modified. Prefixed string
|
| +literals will also not be modified. This affect double-quoted strings but
|
| +not triple-double-quote strings.
|
| +
|
| +"""
|
| +
|
| +from lib2to3.fixer_base import BaseFix
|
| +from lib2to3.pgen2 import token
|
| +
|
| +
|
| +class FixSingleQuoteStrings(BaseFix):
|
| +
|
| + explicit = True
|
| + _accept_type = token.STRING
|
| +
|
| + def match(self, node):
|
| + res = node.value.startswith('"') and not node.value.startswith('"""') and "'" not in node.value[1:-1]
|
| + return res
|
| +
|
| + def transform(self, node, results):
|
| + node.value = node.value.replace('"', "'")
|
| + node.changed()
|
|
|