fix(cli): keep snake_case underscores intact in strip markdown mode

This commit is contained in:
IAvecilla
2026-04-21 15:32:59 -03:00
parent b2111a2b45
commit aa61831a14
4 changed files with 36 additions and 5 deletions

View File

@@ -97,4 +97,12 @@ describe('estimateRows', () => {
expect(estimateRows(md, 40)).toBe(2)
})
it('keeps intraword underscores when sizing snake_case identifiers', () => {
const w = 80
const snake = 'look at recover_with_credential_pool now'
const plain = 'look at recover with credential pool now'
expect(estimateRows(snake, w)).toBe(estimateRows(plain, w))
})
})

View File

@@ -25,9 +25,9 @@ const renderEstimateLine = (line: string) => {
.replace(/\[(.+?)\]\((https?:\/\/[^\s)]+)\)/g, '$1')
.replace(/`([^`]+)`/g, '$1')
.replace(/\*\*(.+?)\*\*/g, '$1')
.replace(/__(.+?)__/g, '$1')
.replace(/(?<!\w)__(.+?)__(?!\w)/g, '$1')
.replace(/\*(.+?)\*/g, '$1')
.replace(/_(.+?)_/g, '$1')
.replace(/(?<!\w)_(.+?)_(?!\w)/g, '$1')
.replace(/~~(.+?)~~/g, '$1')
.replace(/==(.+?)==/g, '$1')
.replace(/\[\^([^\]]+)\]/g, '[$1]')