| 123456789101112131415161718192021222324252627282930 |
- /**
- * @import {Break, Parents} from 'mdast'
- * @import {Info, State} from 'mdast-util-to-markdown'
- */
- import {patternInScope} from '../util/pattern-in-scope.js'
- /**
- * @param {Break} _
- * @param {Parents | undefined} _1
- * @param {State} state
- * @param {Info} info
- * @returns {string}
- */
- export function hardBreak(_, _1, state, info) {
- let index = -1
- while (++index < state.unsafe.length) {
- // If we can’t put eols in this construct (setext headings, tables), use a
- // space instead.
- if (
- state.unsafe[index].character === '\n' &&
- patternInScope(state.stack, state.unsafe[index])
- ) {
- return /[ \t]/.test(info.before) ? '' : ' '
- }
- }
- return '\\\n'
- }
|