Merge pull request #2222 from topecongiro/issue-2197

Do not format fenced code blocks in comment
This commit is contained in:
Nick Cameron 2017-12-03 15:00:27 +13:00 committed by GitHub
commit 07106d444c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 21 additions and 0 deletions

View File

@ -319,6 +319,7 @@ fn rewrite_comment_inner(
let mut result = opener.to_owned();
let mut is_prev_line_multi_line = false;
let mut inside_code_block = false;
let comment_line_separator = format!("\n{}{}", indent_str, line_start);
for line in lines {
if result == opener {
@ -331,6 +332,14 @@ fn rewrite_comment_inner(
result.push_str(&comment_line_separator);
}
if line.starts_with("```") {
inside_code_block = !inside_code_block;
}
if inside_code_block {
result.push_str(line);
continue;
}
if config.wrap_comments() && line.len() > fmt.shape.width && !has_url(line) {
match rewrite_string(line, &fmt, Some(max_chars)) {
Some(ref s) => {

View File

@ -0,0 +1,12 @@
// rustfmt-max_width: 79
// rustfmt-wrap_comments: true
// rustfmt-error_on_line_overflow: false
/// ```rust
/// unsafe fn sum_sse2(x: i32x4) -> i32 {
/// let x = vendor::_mm_add_epi32(x, vendor::_mm_srli_si128(x.into(), 8).into());
/// let x = vendor::_mm_add_epi32(x, vendor::_mm_srli_si128(x.into(), 4).into());
/// vendor::_mm_cvtsi128_si32(x)
/// }
/// ```
fn foo() {}