* Splits VFS text into lines for line-oriented grep. Strips a trailing CR so Windows-style * CRLF payloads still match patterns anchored at line end (`$`).
(content: string)
| 99 | * CRLF payloads still match patterns anchored at line end (`$`). |
| 100 | */ |
| 101 | function splitLinesForGrep(content: string): string[] { |
| 102 | return content.split('\n').map((line) => line.replace(/\r$/, '')) |
| 103 | } |
| 104 | |
| 105 | /** |
| 106 | * Returns true when `filePath` is `scope` or a descendant path (`scope/...`). If `scope` contains |