puremourning / vimspector

vimspector - A multi-language debugging system for Vim
http://puremourning.github.io/vimspector-web
Apache License 2.0
4.11k stars 175 forks source link

[Feature Request] Merge stdout and stderr in the Output View #613

Open zsmatrix62 opened 2 years ago

zsmatrix62 commented 2 years ago

Description

Hi,

Im new to Vimspector, today I wrote a config file for my go project but it seems launch failed, I want to check the failing reason and it provides Failed to launch: Build error: Check the debug console for details.

But where is the mentioned console

image

Works in vim?

Reproducable in Vim

Works with clean config?

Yes

Minimal Reproduction

List of steps to reproduce:

  1. Run vim ---clean Nu /path/to/vimspector/support/minimal_vimrc
  2. Open this project...
  3. Press this sequence of keys

Expected Behaviour

show failing reason in some place

Actual Behaviour

nothing shows

Additional information

No response

Installation Type

Plugin Manager (git clone)

Vimspector version

latest

Debug Info

No response

Log file

No response

Vim version

NVIM 0.7.2

Python version

No response

Neovim diagnostics

No response

Operating System

No response

Declaration

puremourning commented 2 years ago

where are the steps to reproduce?

Please complete all elements of the template.

puremourning commented 2 years ago
Screenshot 2022-06-29 at 15 17 28

If you use vim, you'd see the WinBar with the stderr tab. It would have a little * next to it to show there is output.

Anyway, use :VimspectorShowOutput stderr in this case. I don't control what the debug adapter says in its failure message. The "debug console" could mean anything in any client.

puremourning commented 2 years ago

hmmm, wonder if it would be better to pipe the stderr from the debug adapter into the Console buffer. :/ not sure how useful that might be, but perhaps it would make these sorts of messages easier to find.

puremourning commented 2 years ago

the spec has been updated/clarified since I last looked at it:

     * 'stdout': Show the output as normal program output from the debuggee.
     * 'stderr': Show the output as error program output from the debuggee.

I think therefore it makes no sense to do what vimspector is currently doing, which is putting the stdout in Console and the stderr in a different buffer. I'll fix that.

angles-n-daemons commented 11 months ago

Would it be as simple as modifying the BUFFER_MAP in output.py so that stderr points to the Console?

puremourning commented 11 months ago

If memory serves it wasn't that simple. But feel free to try it.