Requirements:
The line contains a string which is surrounded by parentheses and:
- - The target string is NOT the only argument to a function call).
+ - The target string is NOT the only argument to a function call.
+ - The target string is NOT a "pointless" string.
- If the target string contains a PERCENT, the brackets are not
preceeded or followed by an operator with higher precedence than
PERCENT.
if leaf.type != token.STRING:
continue
+ # If this is a "pointless" string...
+ if (
+ leaf.parent
+ and leaf.parent.parent
+ and leaf.parent.parent.type == syms.simple_stmt
+ ):
+ continue
+
# Should be preceded by a non-empty LPAR...
if (
not is_valid_index(idx - 1)
print(f"Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam. {[f'{i}' for i in range(10)]}")
x = f"This is a long string which contains an f-expr that should not split {{{[i for i in range(5)]}}}."
+# The parens should NOT be removed in this case.
+(
+ "my very long string that should get formatted if I'm careful to make sure it goes"
+ " over 88 characters which it has now"
+)
+
+# The parens should NOT be removed in this case.
+(
+ "my very long string that should get formatted if I'm careful to make sure it goes over 88 characters which"
+ " it has now"
+)
+
+# The parens should NOT be removed in this case.
+(
+ "my very long string"
+ " that should get formatted"
+ " if I'm careful to make sure"
+ " it goes over 88 characters which"
+ " it has now"
+)
+
# output
"This is a long string which contains an f-expr that should not split"
f" {{{[i for i in range(5)]}}}."
)
+
+# The parens should NOT be removed in this case.
+(
+ "my very long string that should get formatted if I'm careful to make sure it goes"
+ " over 88 characters which it has now"
+)
+
+# The parens should NOT be removed in this case.
+(
+ "my very long string that should get formatted if I'm careful to make sure it goes"
+ " over 88 characters which it has now"
+)
+
+# The parens should NOT be removed in this case.
+(
+ "my very long string"
+ " that should get formatted"
+ " if I'm careful to make sure"
+ " it goes over 88 characters which"
+ " it has now"
+)