Variable: idlwave-shell-file-line-message
idlwave-shell-file-line-message is a variable defined in
idlw-shell.el.gz.
Value
"\\(\\$MAIN\\$\\|\\<[a-zA-Z][a-zA-Z0-9_$:]*\\([ ]*\n[ ]*[a-zA-Z0-9_$:]+\\)*\\)[ \n]+\\([0-9]+\\([ ]*\n[ ]*[0-9]+\\)*\\)[ \n]+\\([^ \n]+\\([ ]*\n[ ]*[^ \n]+\\)*\\)"
Documentation
A regular expression to parse out the file name and line number.
The 1st group should match the subroutine name. The 3rd group is the line number. The 5th group is the file name. All parts may contain linebreaks surrounded by spaces. This is important in IDL5 which inserts random linebreaks in long module and file names.
Source Code
;; Defined in /usr/src/emacs/lisp/progmodes/idlw-shell.el.gz
(defvar idlwave-shell-file-line-message
(concat
"\\(" ; program name group (1)
"\\$MAIN\\$\\|" ; main level routine
"\\<[a-zA-Z][a-zA-Z0-9_$:]*" ; start with a letter followed by [..]
"\\([ \t]*\n[ \t]*[a-zA-Z0-9_$:]+\\)*"; continuation lines program name (2)
"\\)" ; end program name group (1)
"[ \t\n]+" ; white space
"\\(" ; line number group (3)
"[0-9]+" ; the line number (the fix point)
"\\([ \t]*\n[ \t]*[0-9]+\\)*" ; continuation lines number (4)
"\\)" ; end line number group (3)
"[ \t\n]+" ; white space
"\\(" ; file name group (5)
"[^ \t\n]+" ; file names can contain any non-white
"\\([ \t]*\n[ \t]*[^ \t\n]+\\)*" ; continuation lines file name (6)
"\\)" ; end line number group (5)
)
"A regular expression to parse out the file name and line number.
The 1st group should match the subroutine name.
The 3rd group is the line number.
The 5th group is the file name.
All parts may contain linebreaks surrounded by spaces. This is important
in IDL5 which inserts random linebreaks in long module and file names.")