[To reply replace "Aaron.Sloman.XX" with "A.Sloman"]
In the old days when terminals and connections to machines were slow
(e.g. 30 characters per second), and screen space was scarce and
expensive, it seemed wasteful, while compiling from Ved to have the full
text of compilation errors generated by "mishap" go into an output file,
unlike run-time errors which have always done so.
Thus many of the syntax errors are reported on the status line using
vederror. (See HELP MISHAPS, REF vederror)
This is how it is defined in $usepop/pop/ved/src/vdstatus.p
define vars vederror(string);
lvars string;
if vedinvedprocess then
Open_file_window();
vedputmessage(string);
vedscreenbell();
vedinterrupt();
else
mishap(0, string)
endif
enddefine;
Where the unexported system procedure after "then" is defined (in
effect) thus in vdwindows.p:
define Open_file_window();
if vedusewindows and wved_is_live_window(wvedwindow) then
wved_open_window(wvedwindow)
endif
enddefine;
PROBLEM:
I have noticed that people often don't notice the error message
on the status line, and sometimes the status line is too short anyway,
or in a multi-window environment it can easily get covered up, etc.
Worse, if they are sending email requests for help, they cannot use
the mouse to select and paste the error message: clicking on the
status line makes the message go away! (This doesn't happen in Ved).
So I now propose that the default definition of vederror be changed to
something like this:
define vederror(string);
edit('output.p');
vedendfile();
if vedusewindows and wved_is_live_window(wvedwindow) then
;;; make sure error message file is visible,
;;; de-iconising if necessary
wved_open_window(wvedwindow)
endif;
dlocal
cucharout = vedcharinsert,
cucharerr = vedcharinsert,
vedbreak;
true -> vedbreak;
mishap(string, []);
enddefine;
The edit('output.p') command above could be changed to something like
edit(vederrors_file)
where vederrors_file might be a user-specified string holding the name
of a file to be used for VED and compilation error messages.
I am thinking of building this into the default startup.psv image here
(after consultation).
I wonder what others think?
(It can be combined with code that makes the output.p window always
relatively small, e.g. 10 lines high, by default.)
Aaron
==
Aaron Sloman, ( http://www.cs.bham.ac.uk/~axs/ )
School of Computer Science, The University of Birmingham, B15 2TT, UK
EMAIL A.Sloman AT cs.bham.ac.uk (ReadATas@please !)
PAPERS: http://www.cs.bham.ac.uk/research/cogaff/
TOOLS: http://www.cs.bham.ac.uk/research/poplog/freepoplog.html
|