Skip to content
Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Scribus Plugin: Apply a style

Scribus plugin for applying a style through a small in-place dialog.

This plugin is an alternative to keyboard shortcuts for applying paragraph and character styles.

Press cltr-shift-space to trigger the "Apply a style" dialog:

Apply paragraph styles

Simply type the first letters of the style name and press the Return key.

You can also apply character styles:

Apply a character style

Take care, that at the time of writing, you should first select some text before being able to apply any charcter formatting.

This plugin is not in Scribus yet: you have to compile Scribus with this plugin if you want to use it.


The dialog is composed by:

  • A text box for typing part of the styles name (spaces are ignored)
  • A list showing the matching styles:
    • the first style in alphabetical order is preselected.
    • the currently matching style is marked as bold.
    • paragraph styles are prefixed by a ¶, character styles by T.
  • Tab moves to the next style in the list
  • Return selects the first style in the list.
  • Esc closes the dialog without applying the style.
  • No mouse interaction is possible (the policy will only be reivisde, if somebody can present a valid reason for using the mouse).

Future plans

  • Can be launched through a shortcut and the menues (for discovaribility).
  • If scribus is in edit mode, the dialog shows at the cursor position. (The dialog is currently in the middle of the window)
  • Otherwise, if a text frame is selected, shows at a yet to be defined position in the visible part of the text frame (or somewhere in the window)
  • The list of matching styles should be empty if too many styles are matching.
  • Preselect the last style applied?
  • Shift-Tab should go backwards in the list.
  • Show icons for each type of style.
  • Support other types of styles as text styles.
  • allow to apply the style to multiple items of the same type.


First make sure that you have the ScribusAPI plugin installed (

Clone the scribus-plugin-export-plugin repository and put – or symlink – its src directory into scribus/plugins/ as applystyle. Then add


to CMakeList.txt file in scribus/plugins/.

make your Scribus.

In File > Preferences > Keyboard Shortcuts set Ctrl-Shift-Space for the Apply a Style command.

Warning: If you're compiler does not default to c++11, you will have to add -DWANT_CPP11 to your cmake command.


  • get the cursor position on the screen
  • refresh the rendering of the frame and mark the document as dirty.
  • move the ApplyStyleDialogListItem struct away from the dialog file.
  • Get "h1" to match "Heading 1" and "dp" "Default Paragraph Style" (space is the delimiter, if there is no direct match)

Further ideas:

  • Add an API function to know the position of the cursor in the frame (not the index, the x, y coordinates)
  • Create a dialog that captures the keys but has not input field (if possible).
  • Create a dialog that resizes according to the content (upwards or downwards)



Apply a style through a small in place dialog.




No releases published


No packages published