Как открыть GTK Inspector?

Как открыть GTK Inspector?

Я использую GTK.3.15. При попытке открыть GTK Inspector с помощью Ctrl+ Shift+ Iили Ctrl+ Shift+ Dничего не происходит. Неважно, какое приложение или виджет я использую. Ничего не происходит

и я понимаю, что эта опция стандартна для GTK 3.15. Кто-нибудь знает как

использовать этот инструмент в GTK 3.15?

решение1

Я получил это отhttps://wiki.gnome.org/Projects/GTK%2B/Инспектор:

GtkInspector — встроенная интерактивная поддержка отладки в GTK+. Она была добавлена ​​в GTK+ 3.14 на основе копии хорошо зарекомендовавшего себя gtkparasite.

Отладчик по умолчанию отключен. Чтобы включить его, выполните в терминале:

gsettings set org.gtk.Settings.Debug enable-inspector-keybinding true

И запустите его, нажав на клавиатуре Control-Shift-I или Control-Shift-D.

Если вы не хотите использовать сочетания клавиш, вы также можете временно запустить его непосредственно при запуске приложения с помощью:

GTK_DEBUG=interactive your-app

Посмотрев дальше, я обнаружил,Ошибка №1523929что указывает на то, что пользователи могут установить, libgtk-3-devчто затем предоставляет схему. Обратите внимание, что установка libgtk-3-devможет принести много зависимостей.

решение2

Метод 1:


Включить сочетание клавиш:

  1. Установить dconf-editorс помощьюsudo apt-get install dconf-editor
  2. Перейдите к org> gtk> settings>debug
  3. Установлен enable-inspector-keybindingвtrue
  4. Попробуйте сокращенный вариант.

Метод 2:


Запустите программу для отладки с GTK_DEBUGпеременной:

Вместо того, чтобы запускать программу для отладки как обычно ( myprogram --argument), вам нужно запустить ее только таким образом ( GTK_DEBUG=interactive myprogram --argument)

Также вы можете экспортировать эту переменную export GTK_DEBUG=interactiveи затем запустить программу.

решение3

Обновлено:2023-01

Страница вики для Inspector, похоже, немного устарела, и иногда ошибки мешают документированной функциональности. Более того, большая часть этой функциональности реализована в приложениях непоследовательно, что явно привело к тому, что многие люди были направлены в неправильном направлении. (В том числе и предыдущими версиями этого ответа.)

Если вы не хотите использовать сочетания клавиш, вы также можете открыть Инспектор непосредственно при запуске приложения с помощью:

Обработка, GTK_DEBUGпохоже, была исправлена, так что GTK_DEBUG=interactiveв среде автоматически откроется инспектор. Это не работало у меня в прошлом, но в Fedora 37 это работает так, как описано.

Чтобы запустить GTK Inspector, сфокусируйте свое приложение GTK и нажмите Control-Shift-D. Либо переместите курсор мыши на нужный виджет и нажмите , Control-Shift-Iчтобы специально проверить виджет под курсором мыши.

Итак, оказывается, эти заявленияправильный-иш, но они должны сопровождаться целой кучей оговорок.

  • Ctrl+ Shift+D может работать,если приложение не привязало его к чему-то другому.

  • Аналогично, Ctrl+ Shift+I может работать, на тех же условиях.

    И хотя технически это контекстно-зависимый ярлык, который будет проверять «виджет под курсором мыши», многие приложения отображают весь свой интерфейс внутри большого, GtkDrawingAreaтак что не удивляйтесь, если именно этот виджет будет всплывать для большинства местоположений мыши. (Вы в любом случае не сможете ничего проверить внутри этой области, поскольку содержимое не является виджетами Gtk.)

  • Если приложениеимеетЕсли вы отключите один или оба ярлыка, их локальные привязки будут переопределены, и вы ничего не сможете с этим поделать.

    • В частности, в Nautilus есть другая привязка для ++ Ctrl( это «Инвертировать выделение»), поэтому это сочетание клавиш никогда не будет работать для открытия инспектора в Nautilus, и вам придется использовать только ++ .ShiftICtrlShiftD

    • Терминал Gnome на самом деле связываетоба Ctrl+ Shift+ Dи Ctrl+ Shift+ I, поэтому ни одно из сочетаний клавиш не будет работать... поэтому они предоставляют удобныйПомощь > Инспекторопция в строке меню приложения (если вы ее активируете).

  • Последний, но тем не менее важный,есть ошибка в обработке Gtkиз Ctrl+ Shift+ D, которые могут помешать его работе каждый раз, когда вы пытаетесь его использовать. ( Похоже, на Ctrl+ Shift+ Iэто не влияет.)

Чтобы попасть к инспектору, вам необходимо выполнить пункты из этого списка:

  1. Установите соответствующий пакет gtk3-devel/ libgtk-3-devили gtk4-devel/ libgtk-4-dev. Необязательно.

  2. Если вы используете Gtk3, включите ключ dconf /org/gtk/settings/debug/enable-inspector-keybinding/ ключ GSettings org.gtk.Settings.Debug enable-inspector-keybinding. (Это одна и та же настройка.) При желании вы можете отключить org.gtk.Settings.Debug inspector-warning.

    У Gtk4 есть свой собственный enable-inspector-keybindingключ org.gtk.gtk4.settings.debug, но теперь он установлен по умолчанию, Trueтак что вы, вероятно, уже с этим разобрались. Однако org.gtk.gtk4.settings.debug.inspector-warningпо умолчанию он также установлен True, так что вы можете захотеть отключить его.

  3. Или:

    • Запустите программу GTK_DEBUG=interactiveв этой среде.
    • Когда приложение открыто и сфокусировано, введите Ctrl+ Shift+ Dили Ctrl+ Shift+ Iи надейтесь, что один из них сработает. Или найдите опцию меню, чтобы сделать то же самое.

Связанный контент