Turn output tab into an interactive console #8528
Replies: 7 comments 15 replies
-
I would very much enjoy having this in the engine, to be able to run commands quickly without having to wrap things in editor tool scripts that only do something simple and end up being buttons (being a fair amount of boilerplate for just a button). |
Beta Was this translation helpful? Give feedback.
-
See also: |
Beta Was this translation helpful? Give feedback.
-
I like this because embedding it into the Output panel is a good design. |
Beta Was this translation helpful? Give feedback.
-
Perhaps this console could evaluate expressions in-game when the game is running, and in-editor when it's not. Single UI for both |
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.
-
just only add that both having a console that runs stuff in the editor to try fast things, plus have the option to export such console functionality with exported projects would be great |
Beta Was this translation helpful? Give feedback.
-
Visual Basic, from many years ago, had this and it was fantastic. |
Beta Was this translation helpful? Give feedback.
-
I've been trying to find the easiest way to make editor tools without UI, and while it's convenient to make Command Palette commands, a big drawback of them is that you can't pass any arguments to them. So if a command needs to prompt for some text, I'd have to create a popup dialogue for that
GDScript expressions caught my attention. From what I understand they can do a lot of different things, in particular call methods, and they should be enough for a simple interactive REPL console
Not only a console like that would allow you to quickly explore the API by poking at things via expressions, it would also solve my problem of having to make GUIs for tools, because I'll be able to just call methods on my utility scripts instead
A console like that can be an addon, but I was wondering what you guys think if this console was just in engine combined with the Output tab? Here's a sketch that I made:
It could expose some convenience variables, for example
EditorInterface.get_edited_scene_root().find_node()
could be aliased to justfind_node()
with simple text substitution, etcWhat do you think?
Beta Was this translation helpful? Give feedback.
All reactions