Skip to content

Introduction

The way that Peplum works can be configured using a configuration file. This section will describe what can be configured and how.

The location of the configuration file will depend on how your operating system and its settings; but by default it is looked for in $XDG_CONFIG_HOME, in a peplum subdirectory. Mostly this will translate to the file being called ~/.config/peplum/configuration.json.

Keyboard bindings

Peplum allows for a degree of configuration of its keyboard bindings; providing a method for setting up replacement bindings for the commands that appear in the command palette.

Bindable commands

The following commands can have their keyboard bindings set:

  • ChangeTheme - Change the application's theme
    • Default: f9
  • EditNotes - Edit the highlighted PEP's notes
    • Default: f2
  • Escape - Back up through the panes, right to left, or exit the app if the navigation pane has focus
    • Default: escape
  • FindPEP - Find and jump to a specific PEP
    • Default: p
  • Help - Show help for and information about the application
    • Default: f1, ?
  • Quit - Quit the application
    • Default: f10, ctrl+q
  • RedownloadPEPs - Redownload the list of PEPs
    • Default: ctrl+r
  • Search - Search for text anywhere in the PEPs
    • Default: /
  • SearchAuthor - Search for an author then filter by them
    • Default: u
  • SearchPythonVersion - Search for a Python version and then filter by it
    • Default: v
  • SearchStatus - Search for a PEP status and then filter by it
    • Default: s
  • SearchType - Search for a PEP type and then filter by it
    • Default: t
  • ShowAll - Clear any filters and show all PEPs
    • Default: a
  • SortByCreated - Sort PEPs by their created date
    • Default: 2
  • SortByNumber - Sort PEPs by their number
    • Default: 1
  • SortByTitle - Sort PEPs by their title
    • Default: 3
  • ToggleAuthorsSortOrder - Toggle the sort order of the authors in the navigation panel
    • Default: A
  • TogglePEPDetails - Toggle the display of the PEP details panel
    • Default: f3
  • TogglePythonVersionsSortOrder - Toggle the sort order of Python versions in the navigation panel
    • Default: V
  • ToggleSortOrder - Toggle the current sort order
    • Default: minus
  • ToggleStatusesSortOrder - Toggle the sort order of the statuses in the navigation panel
    • Default: S
  • ToggleTypesSortOrder - Toggle the sort order of types in the navigation panel
    • Default: T
  • ViewPEP - View the source of the currently-highlighted PEP
    • Default: f4

Changing a binding

If you wish to change the binding for a command, edit the configuration file and add the binding to the bindings value. For example, if you wanted to change the binding used to View the text of a PEP, changing it from F4 to ctrl+v, and you also wanted to use F5 to redownload the PEP data, you would set bindings to this:

"bindings": {
    "ViewPEP": "ctrl+v",
    "RedownloadPEPs": "f5"
}

The designations used for keys is based on the internal system used by Textual; as such its caveats about what works where apply. The main modifier keys to know are shift, ctrl, alt, meta, super and hyper; letter keys are their own letters; shifted letter keys are their upper-case versions; function keys are simply f1, f2, etc; symbol keys (the likes of #, @, *, etc...) generally use a name (number_sign, at, asterisk, etc...).

Tip

If you want to test and discover all of the key names and combinations that will work, you may want to install textual-dev and use the textual keys command.

If you need help with keyboard bindings please feel free to ask.

Theme

Peplum has a number of themes available. You can select a theme using the Change Theme (ChangeTheme, bound to F9 by default) command. The available themes include:

  • catppuccin-latte
  • catppuccin-mocha
  • dracula
  • flexoki
  • gruvbox
  • monokai
  • nord
  • solarized-light
  • textual-dark
  • textual-light
  • tokyo-night

Tip

You can also set the theme via the command line. This can be useful if you want to ensure that Peplum runs up with a specific theme. Note that this also configures the theme for future runs of Peplum.

Here's a sample of some of the themes:

textual-light Peplum v1.0.1 — All; Sorted by Date Created (reversed) (688) All [a]688790Python 3.15 Release   Informational, ActiveTitle Schedule              Python 3.15 Release Schedule ─────── Type ───────Hugo van Kemenade2025-04-26 Standards Track  534────────────────────────────────────────────────────────Author Informational    102788Reimagining native    Standards Track, DraftHugo van Kemenade Process           52threads                Peter Bierma2025-04-23Status ────── Status ──────────────────────────────────────────────────────────────Active Final            332787Safer subprocess usageStandards Track, Deferred Rejected         126using t-strings       Type Withdrawn         68Nick Humrich, Alyssa Coghlan2025-04-13Informational Draft             39──────────────────────────────────────────────────────── Deferred          37785New methods for easierStandards Track, DraftTopic Active            36handling of           Release Superseded        25``ExceptionGroup``\ s  Accepted          24Zac Hatfield-Dodds2025-04-08Created Provisional        1────────────────────────────────────────────────────────2025-04-26 (19 days ago) 784Adding Zstandard to   Standards Track, Accepted ── Python Version ──the standard library  Python Version None203Emma Harper Smith2025-04-063.15 1.6                1──────────────────────────────────────────────────────── 2.0                9783Emscripten Packaging  Standards Track, DraftURL 2.1               25Hood Chatham2025-03-28https://peps.python.org/pep-0790/ 2.2               24──────────────────────────────────────────────────────── 2.3               26782Add PyBytesWriter C   Standards Track, Draft 2.4               18API                    2.5               24Victor Stinner2025-03-27 2.6               16──────────────────────────────────────────────────────── 2.7               12781Make ``TYPE_CHECKING``Standards Track, Draft 2.7.9              2a built-in constant    2.7.12             1Inada Naoki2025-03-24 2.8                1──────────────────────────────────────────────────────── 2.x                1780ABI features as       Standards Track, Draft 3.0               46environment markers    3.1                6Klaus Zimmermann, Ralf Gommers2025-03-21 3.2               12──────────────────────────────────────────────────────── 3.3               29776Emscripten Support    Informational, Draft 3.4               22Hood Chatham2025-03-18  f1 Help  f2 Notes  f3 Details  f4 View  f10 Quit  ^r Redownload ^p Commands

nord Peplum v1.0.1 — All; Sorted by Date Created (reversed) (688) All [a]688790Python 3.15 Release   Informational, ActiveTitle Schedule              Python 3.15 Release Schedule ─────── Type ───────Hugo van Kemenade2025-04-26 Standards Track  534────────────────────────────────────────────────────────Author Informational    102788Reimagining native    Standards Track, DraftHugo van Kemenade Process           52threads                Peter Bierma2025-04-23Status ────── Status ──────────────────────────────────────────────────────────────Active Final            332787Safer subprocess usageStandards Track, Deferred Rejected         126using t-strings       Type Withdrawn         68Nick Humrich, Alyssa Coghlan2025-04-13Informational Draft             39──────────────────────────────────────────────────────── Deferred          37785New methods for easierStandards Track, DraftTopic Active            36handling of           Release Superseded        25``ExceptionGroup``\ s  Accepted          24Zac Hatfield-Dodds2025-04-08Created Provisional        1────────────────────────────────────────────────────────2025-04-26 (19 days ago) 784Adding Zstandard to   Standards Track, Accepted ── Python Version ──the standard library  Python Version None203Emma Harper Smith2025-04-063.15 1.6                1──────────────────────────────────────────────────────── 2.0                9783Emscripten Packaging  Standards Track, DraftURL 2.1               25Hood Chatham2025-03-28https://peps.python.org/pep-0790/ 2.2               24──────────────────────────────────────────────────────── 2.3               26782Add PyBytesWriter C   Standards Track, Draft 2.4               18API                    2.5               24Victor Stinner2025-03-27 2.6               16──────────────────────────────────────────────────────── 2.7               12781Make ``TYPE_CHECKING``Standards Track, Draft 2.7.9              2a built-in constant    2.7.12             1Inada Naoki2025-03-24 2.8                1──────────────────────────────────────────────────────── 2.x                1780ABI features as       Standards Track, Draft 3.0               46environment markers    3.1                6Klaus Zimmermann, Ralf Gommers2025-03-21 3.2               12──────────────────────────────────────────────────────── 3.3               29776Emscripten Support    Informational, Draft 3.4               22Hood Chatham2025-03-18  f1 Help  f2 Notes  f3 Details  f4 View  f10 Quit  ^r Redownload ^p Commands

catppuccin-latte Peplum v1.0.1 — All; Sorted by Date Created (reversed) (688) All [a]688790Python 3.15 Release   Informational, ActiveTitle Schedule              Python 3.15 Release Schedule ─────── Type ───────Hugo van Kemenade2025-04-26 Standards Track  534────────────────────────────────────────────────────────Author Informational    102788Reimagining native    Standards Track, DraftHugo van Kemenade Process           52threads                Peter Bierma2025-04-23Status ────── Status ──────────────────────────────────────────────────────────────Active Final            332787Safer subprocess usageStandards Track, Deferred Rejected         126using t-strings       Type Withdrawn         68Nick Humrich, Alyssa Coghlan2025-04-13Informational Draft             39──────────────────────────────────────────────────────── Deferred          37785New methods for easierStandards Track, DraftTopic Active            36handling of           Release Superseded        25``ExceptionGroup``\ s  Accepted          24Zac Hatfield-Dodds2025-04-08Created Provisional        1────────────────────────────────────────────────────────2025-04-26 (19 days ago) 784Adding Zstandard to   Standards Track, Accepted ── Python Version ──the standard library  Python Version None203Emma Harper Smith2025-04-063.15 1.6                1──────────────────────────────────────────────────────── 2.0                9783Emscripten Packaging  Standards Track, DraftURL 2.1               25Hood Chatham2025-03-28https://peps.python.org/pep-0790/ 2.2               24──────────────────────────────────────────────────────── 2.3               26782Add PyBytesWriter C   Standards Track, Draft 2.4               18API                    2.5               24Victor Stinner2025-03-27 2.6               16──────────────────────────────────────────────────────── 2.7               12781Make ``TYPE_CHECKING``Standards Track, Draft 2.7.9              2a built-in constant    2.7.12             1Inada Naoki2025-03-24 2.8                1──────────────────────────────────────────────────────── 2.x                1780ABI features as       Standards Track, Draft 3.0               46environment markers    3.1                6Klaus Zimmermann, Ralf Gommers2025-03-21 3.2               12──────────────────────────────────────────────────────── 3.3               29776Emscripten Support    Informational, Draft 3.4               22Hood Chatham2025-03-18  f1 Help  f2 Notes  f3 Details  f4 View  f10 Quit  ^r Redownload ^p Commands

dracula Peplum v1.0.1 — All; Sorted by Date Created (reversed) (688) All [a]688790Python 3.15 Release   Informational, ActiveTitle Schedule              Python 3.15 Release Schedule ─────── Type ───────Hugo van Kemenade2025-04-26 Standards Track  534────────────────────────────────────────────────────────Author Informational    102788Reimagining native    Standards Track, DraftHugo van Kemenade Process           52threads                Peter Bierma2025-04-23Status ────── Status ──────────────────────────────────────────────────────────────Active Final            332787Safer subprocess usageStandards Track, Deferred Rejected         126using t-strings       Type Withdrawn         68Nick Humrich, Alyssa Coghlan2025-04-13Informational Draft             39──────────────────────────────────────────────────────── Deferred          37785New methods for easierStandards Track, DraftTopic Active            36handling of           Release Superseded        25``ExceptionGroup``\ s  Accepted          24Zac Hatfield-Dodds2025-04-08Created Provisional        1────────────────────────────────────────────────────────2025-04-26 (19 days ago) 784Adding Zstandard to   Standards Track, Accepted ── Python Version ──the standard library  Python Version None203Emma Harper Smith2025-04-063.15 1.6                1──────────────────────────────────────────────────────── 2.0                9783Emscripten Packaging  Standards Track, DraftURL 2.1               25Hood Chatham2025-03-28https://peps.python.org/pep-0790/ 2.2               24──────────────────────────────────────────────────────── 2.3               26782Add PyBytesWriter C   Standards Track, Draft 2.4               18API                    2.5               24Victor Stinner2025-03-27 2.6               16──────────────────────────────────────────────────────── 2.7               12781Make ``TYPE_CHECKING``Standards Track, Draft 2.7.9              2a built-in constant    2.7.12             1Inada Naoki2025-03-24 2.8                1──────────────────────────────────────────────────────── 2.x                1780ABI features as       Standards Track, Draft 3.0               46environment markers    3.1                6Klaus Zimmermann, Ralf Gommers2025-03-21 3.2               12──────────────────────────────────────────────────────── 3.3               29776Emscripten Support    Informational, Draft 3.4               22Hood Chatham2025-03-18  f1 Help  f2 Notes  f3 Details  f4 View  f10 Quit  ^r Redownload ^p Commands