Я использую 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:
Включить сочетание клавиш:
- Установить
dconf-editor
с помощьюsudo apt-get install dconf-editor
- Перейдите к
org
>gtk
>settings
>debug
- Установлен
enable-inspector-keybinding
вtrue
- Попробуйте сокращенный вариант.
Метод 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это не влияет.)
Чтобы попасть к инспектору, вам необходимо выполнить пункты из этого списка:
Установите соответствующий пакет
gtk3-devel
/libgtk-3-dev
илиgtk4-devel
/libgtk-4-dev
. Необязательно.Если вы используете Gtk3, включите ключ dconf
/org/gtk/settings/debug/enable-inspector-keybinding
/ ключ GSettingsorg.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
, так что вы можете захотеть отключить его.Или:
- Запустите программу
GTK_DEBUG=interactive
в этой среде. - Когда приложение открыто и сфокусировано, введите Ctrl+ Shift+ Dили Ctrl+ Shift+ Iи надейтесь, что один из них сработает. Или найдите опцию меню, чтобы сделать то же самое.
- Запустите программу