#string-literal #string #compile-time #proc-macro #literals #indentation #remove

str-block

从字符串字面量中移除首行空白和公共缩进

3个版本

0.1.2 2024年3月21日
0.1.1 2024年2月17日
0.1.0 2024年2月16日

#760 in 文本处理

MIT OR Apache-2.0 OR Zlib

155KB
3.5K SLoC

str-block

str_block 是一个处理字符串字面量的proc宏。如果输入的第一行除了空白外为空,则从输入中移除第一行,并从其余行中移除公共缩进。除了空白外的空行被视为具有公共缩进。

# use str_block::str_block;
assert_eq!(str_block! {"
    Hello
    World
"}, "Hello\nWorld\n");

使用 {} 来防止 rustfmt 移动您的字符串。

您可以将多个字符串字面量传递给 str_block,它将在处理结果之前为您将它们连接起来。您还可以传递原始字符串字面量。

依赖项

~60KB