Clang-Format:重新组合字符串文字

问题描述 投票:0回答:1

有没有办法让 clang-format 来改变这个:

function_name("a very very "                | <-- column limit
              "very very "                  |
              "long string");               |

进入这个:

function_name("a very very very very long"  |
              " string");                   |

它会很高兴地打破超出限制的字符串文字,但我似乎无法让它重新组合。

c++ automated-refactoring clang-format
1个回答
0
投票

有同样的问题,没有找到如何用

clang-format
做到这一点。最后,使用了以下 Python 脚本:

filename = "/path/to/file"
content = ""
with open(filename,'r') as infile:
  content = infile.read()
  content = re.sub('"\n\s*"', '', content)
with open(filename, 'w') as outfile:
  outfile.write(content)

第 5 行的正则表达式删除了一个双引号,后跟一个换行符、空格和一个新的双引号。对我来说这有效。

稍后,以下

clang-format
选项可能有助于不再破坏字符串文字:

BreakStringLiterals = false
© www.soinside.com 2019 - 2024. All rights reserved.