[Lazarus] Run Without Debbuging Shift+Ctrl+F9

Martin lazarus at mfriebe.de
Sun May 1 14:07:10 CEST 2011


On 01/05/2011 12:47, Sven Barth wrote:
> On 01.05.2011 12:44, Bernd wrote:
>> 2011/5/1 Bernd<prof7bit at googlemail.com>:
>>> * there is no option to clear it, with every new run it will scroll to
>>> the top but append the new text at the bottom
>>> * there is no scrollbar
>>> * it should use a fixed width font (some applications might output
>>> formatted text)
>>
>> * and there should be an option to make it open automatically when the
>> program is run and this option should be enabled by default, just to
>> make it consistent with the xterm also appearing automatically when
>> the app is run without debugger.
>
> You need to open a terminal with the settings of your choice and 
> Lazarus just tells GDB to redirect the output of the debugged process 
> to that window. Lazarus has basically no way of knowing what your 
> preffered shell looks like (as there are many, many different terminal 
> applications on Linux).
....
>
> What could be done by the Lazarus devs though is to use the "starting 
> application" that's entered in the projects option, let that execute 
> the "tty" command and then Lazarus uses that to start GDB. This way 
> the user could use his/her default shell (or maybe a global "terminal" 
> command line option would be better)

There is a patch on the tracker somewhere, that would allow this.....

Yet the way it is currently done, is not good enough.
The patch includes commands that need to be run by the terminal, and 
those should not be hardcoded.

If someone wants to rewrite the patch, so that the debugger options can 
contain an executable (script or otherwhise), and this script returns 
only the tty name, then i think it could be accepted.

for this the debuggerproperties needs 2 values.
either keep the current tty property, and add a tty-script
or *preferred* add a 2nd property tty-is-exe (true/false)

Note that if the debugger executes the scripts, and reads the output, 
then it can be allowed to strip a newline, but that's it. any other 
extra output must be detected, and lead to the script being ignored. (or 
an error generated).
No attempts to smart-guess, which part of the output is the tty. it is 
either a single line output, and the whole line is the tty, or it is wrong.

Since the script mus return (the debugger should await it's 
termination), the terminal would have to launch as background process.

Patch, Ideas, Discussion welcome.

-----------
I think ultimately the build in is the best solution. But yes it still 
needs a lot of work....







More information about the Lazarus mailing list