Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Export Extensions were introduced in ReText 3.0 and allow you to add your own export functions to ReText.
These extensions work without needing to save the original file — ReText will write a temporary file in original markup or in HTML, depending on what arguments you specify in the command.
An export extension is a desktop-file located in
RETEXT_PREFIX/share/retext/export-extensions, currently supported prefixes are
~/.local. Export extension file should have a
It is possible to write extensions that are compatible with the Desktop Entry Specification.
Export extensions take Markdown, reStructuredText or HTML files as input file.
Structure of the file
Here's a basic file structure:
[Desktop entry] # First line is optional Key1=Value1 Key2=Value2 ...
Currently supported keys are
DefaultExtension may have a
X-ReText- vendor prefix.
||Displayed name of the extension, with possible localizations|
||Name of the icon in the icon theme|
||Absolute path to command being executed, with some arguments (see section below)|
||When set, the extension will be enabled with a certain file type. Use
||Used in save dialog, should be in form of QFileDialog file filter (example:
||Default extension that dialog will append to the file (example:
These arguments, if given in
Exec key string, ReText will replace:
||Input file name (Markdown or reStructuredText)|
||Input HTML file name|
||Output file name (will trigger a dialog to allow user select one)|
Example of extension
This extension will use pandoc to export a Markdown file to RTF
[Desktop Entry] Name=Export to RTF Name[ru]=Экспорт в RTF Exec=/usr/bin/pandoc -f markdown -t rtf -o %of %if X-ReText-FileFilter=RTF Files (*.rtf) X-ReText-DefaultExtension=.rtf