Commit 0382f22
committed
Fix dash conversion corrupting tables inside blockquotes
Dash conversion scans line by line, so a blockquoted table separator
arrives as "> | -- | -- |", which never matched the table separator
pattern (anchored at "|"). The row was treated as prose and smart-
punctuated into "| - | - |", breaking table rendering in Obsidian.
Fenced code blocks inside blockquotes had the same blind spot, since
fence tracking only stripped whitespace, and blockquoted thematic
breaks were missed because that check ran against the raw line.
Add _strip_block_markers() to remove leading blockquote markers and
indentation, and use it wherever block-level constructs are detected
in _convert_dash_sequences() and _strip_trailing_whitespace(). Prose
dashes inside blockquotes still convert.
Tests exercise _convert_dash_sequences() directly rather than through
mdformat.text(), so they do not pull in the gfm parser extension,
which conflicts with this plugin's list_item renderer.1 parent 5502154 commit 0382f22
4 files changed
Lines changed: 112 additions & 6 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
165 | 165 | | |
166 | 166 | | |
167 | 167 | | |
168 | | - | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
169 | 171 | | |
170 | 172 | | |
171 | 173 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | | - | |
| 3 | + | |
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
425 | 425 | | |
426 | 426 | | |
427 | 427 | | |
| 428 | + | |
| 429 | + | |
| 430 | + | |
| 431 | + | |
| 432 | + | |
| 433 | + | |
| 434 | + | |
| 435 | + | |
| 436 | + | |
| 437 | + | |
| 438 | + | |
| 439 | + | |
| 440 | + | |
428 | 441 | | |
429 | 442 | | |
430 | 443 | | |
| |||
436 | 449 | | |
437 | 450 | | |
438 | 451 | | |
439 | | - | |
440 | | - | |
| 452 | + | |
| 453 | + | |
441 | 454 | | |
442 | 455 | | |
443 | 456 | | |
| |||
494 | 507 | | |
495 | 508 | | |
496 | 509 | | |
497 | | - | |
| 510 | + | |
| 511 | + | |
| 512 | + | |
498 | 513 | | |
499 | 514 | | |
500 | 515 | | |
| |||
505 | 520 | | |
506 | 521 | | |
507 | 522 | | |
508 | | - | |
| 523 | + | |
| 524 | + | |
509 | 525 | | |
510 | 526 | | |
511 | 527 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
385 | 385 | | |
386 | 386 | | |
387 | 387 | | |
| 388 | + | |
| 389 | + | |
| 390 | + | |
| 391 | + | |
| 392 | + | |
| 393 | + | |
| 394 | + | |
| 395 | + | |
| 396 | + | |
| 397 | + | |
| 398 | + | |
| 399 | + | |
| 400 | + | |
| 401 | + | |
| 402 | + | |
| 403 | + | |
| 404 | + | |
| 405 | + | |
| 406 | + | |
| 407 | + | |
| 408 | + | |
| 409 | + | |
| 410 | + | |
| 411 | + | |
| 412 | + | |
| 413 | + | |
| 414 | + | |
| 415 | + | |
| 416 | + | |
| 417 | + | |
| 418 | + | |
| 419 | + | |
| 420 | + | |
| 421 | + | |
| 422 | + | |
| 423 | + | |
| 424 | + | |
| 425 | + | |
| 426 | + | |
| 427 | + | |
| 428 | + | |
| 429 | + | |
| 430 | + | |
| 431 | + | |
| 432 | + | |
| 433 | + | |
| 434 | + | |
| 435 | + | |
| 436 | + | |
| 437 | + | |
| 438 | + | |
| 439 | + | |
| 440 | + | |
| 441 | + | |
| 442 | + | |
| 443 | + | |
| 444 | + | |
| 445 | + | |
| 446 | + | |
| 447 | + | |
| 448 | + | |
| 449 | + | |
| 450 | + | |
| 451 | + | |
| 452 | + | |
| 453 | + | |
| 454 | + | |
| 455 | + | |
| 456 | + | |
| 457 | + | |
| 458 | + | |
| 459 | + | |
| 460 | + | |
| 461 | + | |
| 462 | + | |
| 463 | + | |
| 464 | + | |
| 465 | + | |
| 466 | + | |
| 467 | + | |
| 468 | + | |
| 469 | + | |
| 470 | + | |
| 471 | + | |
| 472 | + | |
| 473 | + | |
| 474 | + | |
| 475 | + | |
0 commit comments