MCPcopy
hub / github.com/code-hike/codehike / joinWhitespace

Function joinWhitespace

packages/codehike/src/code/highlight.ts:148–163  ·  view source on GitHub ↗
(tokens: AnyToken[])

Source from the content-addressed store, hash-verified

146}
147
148function joinWhitespace(tokens: AnyToken[]) {
149 const joinedTokens: AnyToken[] = []
150 tokens.forEach((tokenOrGroup) => {
151 if (isWhitespace(tokenOrGroup)) {
152 let last = joinedTokens[joinedTokens.length - 1]
153 if (last && isWhitespace(last)) {
154 joinedTokens[joinedTokens.length - 1] += tokenOrGroup
155 } else if (tokenOrGroup !== "") {
156 joinedTokens.push(tokenOrGroup)
157 }
158 } else if (tokenOrGroup[0].length > 0) {
159 joinedTokens.push(tokenOrGroup)
160 }
161 })
162 return joinedTokens
163}
164
165// splits " \t foo bar \n" into [" \t ","foo bar"," \n"]
166// "foo bar" -> ["","foo bar",""]

Callers 1

highlightFunction · 0.85

Calls 1

isWhitespaceFunction · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…