This section describes settings and additional configuration panels offered by the UI client.

Theme#

JEB ships with three themes:

  • a default theme:
    • which will be light if the system rendered the application widgets with a white or light colored background (as is the default on most operating systems)
    • which will be dark if the application widgets provided by the operating system were dark
  • a Dark theme
  • a Light (~sepia) fall-back theme

Toggle from Default to Dark to Light via the Edit, Theme command, or the MOD1+Shift+Alt+T keyboard shortcut (MOD1= Ctrl on Windows/Linux, Command on macOS).

Note

The fall-back light theme was added mostly for macOS users whose system is configured in Dark Mode but prefer running JEB with lighter colors.

Default theme

Default theme on a Dark Mode system

Dark Theme

Light Theme

Styles and Fonts#

The Edit menu (or the Application menu on Mac) allows users to customize the styles of interactive item as well as the code font used by most JEB views.

Make sure to select a fixed font. JEB tries its best to select the most appropriate font on your system. If that fails, and you wish to select a font manually, we recommend Consolas on Windows, Menlo/Monaco on Mac, or DejaVu Sans Mono on Linux.

Unicode

JEB supports Unicode. While the aforementioned fonts have good support for a variety of common non-ASCII planes (CJK, Cyrillic, etc.), you might need to use a different font to properly examine strings written in exotic locales.

Keyboard Shortcuts#

Most JEB command handlers can be triggered by keyboard shortcuts. The default shortcuts are visible when visualizing menu items.

To customize keyboard shortcuts:

  • in JEB's bin/ folder, copy jeb-shortcuts.cfg.TEMPLATE to jeb-shortcuts.cfg
  • edit jeb-shortcuts.cfg: uncomment the command lines for which you wish to use custom keyboard shortcuts

Refer to the jeb-shortcuts.cfg.TEMPLATE file in your bin/ folder for details:

#------------------------------------------------------------------------------
# JEB Custom Keyboard Shortcuts
#------------------------------------------------------------------------------

# 1) Rename or copy this file to jeb-shortcuts.cfg
# 2) Uncomment and add your own keyboard shortcuts for the actions for which you'd like to override the default shortcuts

# Example: by default, Jump is mapped to the 'G' key; the following line (minus the # character) can be used to remap the action to CTRL+J:
#jump=Ctrl+J

# *** CUSTOMIZABLE HANDLERS ***

#runScript=
#runLastScript=
#share=
...

Example:

Changing the shortcut for the 'Comment' action to ';' (instead of '/')

Locale#

The UI client front-end is available in English as well as 10 additional languages. Select your preferred language via the Edit menu:

Note

The back-end components (modules and plugins) are not localized at the moment. Only front-end components were localized.

Non-English locales having partial support at the moment are: Chinese, French, German, Italian, Japanese, Korean, Portuguese, Russian, Spanish, Turkish.

Simple Options#

Simple options are accessible via the Edit or Application menu. Two panels, General and Development, offer a partial view of JEB's configuration files, described in upcoming sections.

General options#

  • You may customize your packaged plugins directory. Packaged plugins are third-party Jar modules that add functionality to JEB: they can be parsers, disassemblers, decompilers, debuggers, code analyzers, etc.
  • Customize your auto-update options. http and socks proxy are supported.
  • Specify your log levels (normal, debug, warning only, etc.). Log messages are output in the Logger window.

The 'Specific Project Properties' button is not shown when no project is loaded

Development options#

  • The Development mode enables verbose logging for increased insight into the program.
  • The plugin classpath and classname widgets allow setting up non-packaged Java plugins, which makes developing them easier.

All Options#

Most JEB options are stored in two configuration files, jeb-client.cfg (front-end options) and jeb-engines.cfg (back-end options). You may configure them via the Options Tree dialogs accessible by pressing the 'Xxx Properties' buttons.

Options dialog

Front-end properties

Warning

The 'Specific Project Properties' is used to modify the back-end properties of your current project only.

Front-end options#

See this document.

Back-end options#

See this document.

Dex decompiler advanced options#

Like any plugin, the base dex decompiler options are located under .parsers.dcmp_dex. However, the emulator options are in a separate file, typically under coreplugins/dexdec-emu.cfg. Those options may be modified in the GUI via the Android, Emulator Settings... handler.