Skip to content

Rantoninfra

Rants on infrastructure

This page is for rants and not trivially acquired infrastructure-related information.

VS Code supports turning links along with source positions to clickable links in terminal windows. We can leverage this to get clickable error messages even when everything else falls apart.

Refer to #140780 | Jump to line+column in terminal links (format l:c) for more details.

TLDR The regex is:

/** As xterm reads from DOM, space in that case is nonbreaking char ASCII code - 160, 
 replacing space with nonBreakningSpace or space ASCII code - 32. */ 
 export const lineAndColumnClause = [ 
    '((\\S*)[\'"], line ((\\d+)( column (\\d+))?))', // "(file path)", line 45 [see #40468] 
    '((\\S*)[\'"],((\\d+)(:(\\d+))?))', // "(file path)",45 [see #78205] 
    '((\\S*) on line ((\\d+)(, column (\\d+))?))', // (file path) on line 8, column 13 
    '((\\S*):line ((\\d+)(, column (\\d+))?))', // (file path):line 8, column 13 
    '(([^\\s\\(\\)]*)(\\s?[\\(\\[](\\d+)(,\\s?(\\d+))?)[\\)\\]])', // (file path)(45), (file path) (45), (file path)(45,18), (file path) (45,18), (file path)(45, 18), (file path) (45, 18), also with [] 
    '(([^:\\s\\(\\)<>\'\"\\[\\]]*)(:(\\d+))?(:(\\d+))?)' // (file path):336, (file path):336:9 
 ].join('|').replace(/ /g, `[${'\u00A0'} ]`);

TextMate (Code derivatives), TreeSitter (Zed, etc.), IntelliJ plugins

...WIP