GTK 검사기를 어떻게 열 수 있나요?

GTK 검사기를 어떻게 열 수 있나요?

GTK.3.15를 사용하고 있습니다. Ctrl++ 또는 ++ + Shift를 사용하여 GTK Inspector를 열려고 하면 아무 일도 일어나지 않습니다. 어떤 애플리케이션이나 위젯을 사용하고 있는지는 중요하지 않습니다. 아무 반응이 없습니다ICtrlShiftD

제가 이해한 바에 따르면 이 옵션은 GTK 3.15에서 표준으로 제공됩니다. 방법 아는 사람 있나요?

GTK 3.15에서 이 도구를 사용하려면?

답변1

나는 이것을에게서 얻었다https://wiki.gnome.org/Projects/GTK%2B/Inspector:

GtkInspector는 GTK+에 내장된 대화형 디버깅 지원입니다. 이는 잘 확립된 gtkparasite의 복사본을 기반으로 GTK+ 3.14에 추가되었습니다.

디버거는 기본적으로 비활성화되어 있습니다. 활성화하려면 터미널에서 실행하세요.

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의 위키 페이지는 약간 오래된 것 같고 때때로 버그가 문서화된 기능을 방해합니다. 더욱이 이 기능의 대부분은 애플리케이션에서 일관되지 않게 구현되어 많은 사람들이 잘못된 방향으로 이끌리는 결과를 낳았습니다. (이 답변의 이전 버전을 포함합니다.)

바로가기를 사용하지 않으려면 다음을 사용하여 앱을 실행할 때 Inspector를 직접 열 수도 있습니다.

처리가 GTK_DEBUG수정된 것으로 나타나 GTK_DEBUG=interactive환경에서 검사기가 자동으로 열립니다. 과거에는 작동하지 않았지만 Fedora 37에서는 설명된 대로 작동합니다.

GTK Inspector를 시작하려면 GTK 애플리케이션에 초점을 맞추고 키를 누릅니다 Control-Shift-D. 또는 마우스 커서를 원하는 위젯으로 이동한 후 를 눌러 Control-Shift-I마우스 커서 아래에 있는 위젯을 구체적으로 검사하세요.

그래서 이 진술은 다음과 같습니다.옳은-ish, 그러나 여기에는 많은 주의 사항이 수반되어야 합니다.

  • Ctrl+ Shift+D 작동할 수도 있다,애플리케이션이 다른 것에 바인딩하지 않은 경우.

  • 마찬가지로, Ctrl+ Shift+I 작동할 수도 있다, 동일한 조건에서.

    기술적으로는 "마우스 커서 아래 위젯"을 검사하는 상황에 맞는 바로가기이지만, 많은 애플리케이션은 전체 인터페이스를 큰 크기 안에 그리므로 GtkDrawingArea이것이 대부분의 마우스 위치에서 팝업되는 위젯이더라도 놀라지 마십시오. . (어차피 내용이 Gtk 위젯이 아니기 때문에 해당 영역 내부의 어떤 것도 검사할 수 없습니다.)

  • 신청하는 경우가지다바로가기 중 하나 또는 둘 다를 바인딩하면 해당 로컬 바인딩이 재정의되며 이에 대해 수행할 수 있는 작업은 없습니다.

    • 특히 노틸러스는 Ctrl++ Shift에 대한 바인딩이 다르기 때문에("선택 반전") 노틸러스에서 검사기를 열 때 바로가기가 작동하지 않으며 ++ 만 I사용해야 합니다 .CtrlShiftD

    • 그놈 터미널은 실제로 바인딩합니다둘 다 Ctrl++ Shift및 ++ + 이므로 두 단축키 모두 작동하지 않습니다. 이것이 편리한 기능을 제공하는 이유입니다 D.CtrlShiftI도움말 > 검사기응용 프로그램 메뉴 표시줄의 옵션(활성화한 경우)

  • 마지막으로 중요한 것은,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하고 그 중 하나가 작동하기를 바랍니다. 또는 동일한 작업을 수행하는 메뉴 옵션을 찾으십시오.

관련 정보