From 47babe860e5ddedaf148e2c1891af6c1561a6cd9 Mon Sep 17 00:00:00 2001 From: Thaddeus Crews Date: Sun, 23 Jun 2024 09:37:06 -0500 Subject: [PATCH] Style: Relocate `godot_gdb_pretty_print.py` --- .../godot_gdb_pretty_print.py | 48 ++++++++++--------- 1 file changed, 25 insertions(+), 23 deletions(-) rename misc/{scripts => utility}/godot_gdb_pretty_print.py (76%) mode change 100755 => 100644 diff --git a/misc/scripts/godot_gdb_pretty_print.py b/misc/utility/godot_gdb_pretty_print.py old mode 100755 new mode 100644 similarity index 76% rename from misc/scripts/godot_gdb_pretty_print.py rename to misc/utility/godot_gdb_pretty_print.py index 932831d24ed6..7edd6680169f --- a/misc/scripts/godot_gdb_pretty_print.py +++ b/misc/utility/godot_gdb_pretty_print.py @@ -1,28 +1,30 @@ -#!/usr/bin/env python3 -# Load this file to your GDB session to enable pretty-printing -# of some Godot C++ types. -# GDB command: source misc/scripts/godot_gdb_pretty_print.py -# -# To load these automatically in Visual Studio Code, -# add the source command to the setupCommands of your configuration -# in launch.json. -# "setupCommands": [ -# ... -# { -# "description": "Load custom pretty-printers for Godot types.", -# "text": "source ${workspaceRoot}/misc/scripts/godot_gdb_pretty_print.py" -# } -# ] -# Other UI:s that use GDB under the hood are likely to have their own ways to achieve this. -# -# To debug this script it's easiest to use the interactive python from a command-line -# GDB session. Stop at a breakpoint, then use -# python-interactive to enter the python shell and -# acquire a Value object using gdb.selected_frame().read_var("variable name"). -# From there you can figure out how to print it nicely. +""" +Load this file to your GDB session to enable pretty-printing of some Godot C++ types. + +GDB command: `source misc/utility/godot_gdb_pretty_print.py`. + +To load these automatically in Visual Studio Code, add the source command to +the `setupCommands` of your configuration in `launch.json`: +```json +"setupCommands": [ +... + { + "description": "Load custom pretty-printers for Godot types.", + "text": "source ${workspaceFolder}/misc/utility/godot_gdb_pretty_print.py" + } +] +``` +Other UIs that use GDB under the hood are likely to have their own ways to achieve this. + +To debug this script it's easiest to use the interactive python from a command-line +GDB session. Stop at a breakpoint, then use python-interactive to enter the python shell +and acquire a `Value` object using `gdb.selected_frame().read_var("variable name")`. +From there you can figure out how to print it nicely. +""" + import re -import gdb +import gdb # type: ignore # Printer for Godot StringName variables.